diff --git a/README.md b/README.md index 5afe1a5..8ce9ea4 100644 --- a/README.md +++ b/README.md @@ -25,12 +25,53 @@ bash configure.sh Username: root Password: temppwd ``` + +## System Requirements + +- Minimum `10 GB` hard disk with `ext4` filesystem +- Minimum `4 GB` RAM +- Currently only compatible with `AMD Raedon` and `Intel Graphics` chipsets. +- Works only on `64-Bit` systems + +## Bug tracker + +Have a bug or a feature request? [Please open a new issue](https://github.com/PandaLinux/pandaOS/issues/new). Before opening any issue, please search for existing issues. + ## Contribute -Read our [Contributing Guidelines](Contributing.md) for more information. +Read our [Contributing Guidelines](Contributing.md) for more information. Thanks + +## Authors + +Abhimanyu Saharan +- [desk.abhimanyu@gmail.com](mailto:desk.abhimanyu@gmail.com) ## Donate Buy us a cup of coffee. -[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=ZJDFMDKR9X6P8) \ No newline at end of file +[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=ZJDFMDKR9X6P8) + +## Copyright and license + +The MIT License (MIT) + +Copyright (c) 2016 Panda Linux + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/common/functions.sh b/common/functions.sh index c436806..637cfdf 100644 --- a/common/functions.sh +++ b/common/functions.sh @@ -1,17 +1,5 @@ #!/bin/sh -function disable_color() { - COLOR_RED='' - COLOR_GREEN='' - COLOR_YELLOW='' - COLOR_BLUE='' - COLOR_BOLD_RED='' - COLOR_BOLD_GREEN='' - COLOR_BOLD_YELLOW='' - COLOR_BOLD_BLUE='' - COLOR_RESET='' -} - # Safely mount the filesystems function mountFs() { echo " " @@ -28,6 +16,7 @@ function umountFs() { echo " " sudo umount -l "$FILESYSTEM" && echo "$FILESYSTEM is now unmounted" || echo "Unable to unmount $FILESYSTEM" echo " " + sudo rm -rfv "${MOUNT_POINT}" echo "ALL DONE!" echo " " } @@ -91,4 +80,4 @@ function enterChroot() { # Update Grub function updateGrub() { sudo /usr/sbin/update-grub -} \ No newline at end of file +} diff --git a/common/vars.sh b/common/vars.sh index e81ad20..1a3f9e7 100644 --- a/common/vars.sh +++ b/common/vars.sh @@ -7,14 +7,4 @@ # # # # # # # # # # # # # # # # # # # # # # # # # # FILESYSTEM="" -MOUNT_POINT="" - -COLOR_RED='\e[0;31m' -COLOR_GREEN='\e[0;32m' -COLOR_YELLOW='\e[0;33m' -COLOR_BLUE='\e[0;34m' -COLOR_BOLD_RED='\e[1;31m' -COLOR_BOLD_GREEN='\e[1;32m' -COLOR_BOLD_YELLOW='\e[1;33m' -COLOR_BOLD_BLUE='\e[1;34m' -COLOR_RESET='\e[0m' \ No newline at end of file +MOUNT_POINT="/mnt/panda-linux" diff --git a/install.sh b/install.sh index ad8ecbf..54f654f 100755 --- a/install.sh +++ b/install.sh @@ -9,9 +9,9 @@ configureInstall() { # Remove /tools sudo rm -rf /tools # Remove old .config file - rm -f "${PWD}/config" + rm -f "${PWD}/.config" # Create new .config - cat > "${PWD}/config" << "EOF" + cat > "${PWD}/.config" << "EOF" #!/bin/sh EOF @@ -32,50 +32,49 @@ EOF esac done - echo -e "Moint Point: " - read MOUNT_POINT - echo "export MOUNT_POINT=${MOUNT_POINT}" >> "${PWD}/config" + echo "export MOUNT_POINT=${MOUNT_POINT}" >> "${PWD}/.config" echo -e "Filesystem: " read FILESYSTEM - echo "export FILE_SYSTEM=${FILESYSTEM}" >> "${PWD}/config" + echo "export FILE_SYSTEM=${FILESYSTEM}" >> "${PWD}/.config" echo -e "Turn on checks?" select yn in "Yes" "No"; do case $yn in - Yes ) echo 'export MAKE_CHECK=TRUE' >> "${PWD}/config";break;; - No ) echo 'export MAKE_CHECK=FALSE' >> "${PWD}/config";break;; + Yes ) echo 'export MAKE_CHECK=TRUE' >> "${PWD}/.config";break;; + No ) echo 'export MAKE_CHECK=FALSE' >> "${PWD}/.config";break;; esac done echo -e "Turn on parallelism?" select yn in "Yes" "No"; do case $yn in - Yes ) echo 'export MAKE_PARALLEL="-j$(cat /proc/cpuinfo | grep processor | wc -l)"' >> "${PWD}/config";break;; - No ) echo 'export MAKE_PARALLEL=-j1' >> "${PWD}/config";break;; + Yes ) echo 'export MAKE_PARALLEL="-j$(cat /proc/cpuinfo | grep processor | wc -l)"' >> "${PWD}/.config";break;; + No ) echo 'export MAKE_PARALLEL=-j1' >> "${PWD}/.config";break;; esac done - echo 'export TARGET="$(uname -m)-panda-linux-gnu"' >> "${PWD}/config" - echo 'export PATH=/tools/bin:/bin:/usr/bin' >> "${PWD}/config" - echo 'export LC_ALL=POSIX' >> "${PWD}/config" - echo 'export VM_LINUZ=vmlinuz-4.2-systemd' >> "${PWD}/config" - echo 'export SYSTEM_MAP=System.map-4.2' >> "${PWD}/config" - echo 'export CONFIG_BACKUP=config-4.2' >> "${PWD}/config" + echo 'export TARGET="$(uname -m)-panda-linux-gnu"' >> "${PWD}/.config" + echo 'export PATH=/tools/bin:/bin:/usr/bin' >> "${PWD}/.config" + echo 'export LC_ALL=POSIX' >> "${PWD}/.config" + echo 'export VM_LINUZ=vmlinuz-4.2-systemd' >> "${PWD}/.config" + echo 'export SYSTEM_MAP=System.map-4.2' >> "${PWD}/.config" + echo 'export CONFIG_BACKUP=config-4.2' >> "${PWD}/.config" # Make all the configurations available - source "${PWD}/config" + source "${PWD}/.config" # Mount the filesystem mountFs # Copy the data cp -ur ./* "${MOUNT_POINT}" + cp -ur "${PWD}"/.config "${MOUNT_POINT}" # Create /tools mkdir "${MOUNT_POINT}/tools" sudo ln -s "${MOUNT_POINT}/tools" / # Start Installations - for i in {1..3} + for i in {1..4} do cd "$MOUNT_POINT/phase${i}" && bash init.sh done diff --git a/md5sums b/md5sums index c61d185..d27b2fc 100644 --- a/md5sums +++ b/md5sums @@ -78,3 +78,46 @@ a5dd3c57fca254935f5cf8db26e39065 libksba-1.3.3.tar.bz2 6290e750ee87be3bfd9579fc44c6a186 libassuan-2.2.1.tar.bz2 55439c4436b59573a29e144916ee5b61 pinentry-0.9.5.tar.bz2 226bac7374b9466c6ec26b1c34dab844 npth-1.2.tar.bz2 +1cf984125e75f8204938d998a8b6c1e1 util-macros-1.19.0.tar.bz2 +685f8abbffa6d145c0f930f00703b21b libXau-1.0.8.tar.bz2 +18aa5c1279b01f9d18e3299969665b2e libXdmcp-1.1.2.tar.bz2 +6bf2797445dc6d43e9e4707c082eff9c xcb-proto-1.11.tar.bz2 +d149d2812f10cbe04c042232e7964171 Python-3.5.0.tar.xz +83b89587607e3eb65c70d361f13bab43 libffi-3.2.1.tar.gz +5bda2cdb1af51a80aecce58d6e42bd2f dejagnu-1.5.3.tar.gz +44e1a4f4c877e9ddc5a542dfa7ecc92b expect5.45.tar.gz +d7cbb91f1ded1919370a30edd1534304 tcl8.6.4-src.tar.gz +62647d87e9244a4d521c6547e097007c tcl8.6.4-html.tar.gz +9e6a9aca9d155737868b3dc5fd82f788 libxml2-2.9.2.tar.gz +f97a65e6158775de518ac391935634c2 libxcb-1.11.1.tar.bz2 +53c5e5c77d090e103a17f3ed7fd7d8b8 check-0.10.0.tar.gz +35cb8f4d9e5906847901bb39324c2f80 freetype-2.6.1.tar.bz2 +1223cefac2bc77298ff5c7422bb148d5 harfbuzz-1.1.0.tar.bz2 +824d000eb737af6e16c826dd3b2d6c90 fontconfig-2.11.1.tar.bz2 +2e97feed81919465a04ccc71e4073313 xcb-util-0.4.0.tar.bz2 +08fe8ffecc8d4e37c0ade7906b3f4c87 xcb-util-image-0.4.0.tar.bz2 +1022293083eec9e62d5659261c29e367 xcb-util-keysyms-0.4.0.tar.bz2 +468b119c94da910e1291f3ffab91019a xcb-util-renderutil-0.3.9.tar.bz2 +87b19a1cd7bfcb65a24e36c300e03129 xcb-util-wm-0.4.1.tar.bz2 +2b3369d64481c1f72ce2d88f7acdb0fb mesa-11.0.2.tar.bz2 +543b2d28359ef33974fa0e772dd61732 libdrm-2.4.65.tar.bz2 +2e4536c1c48034f188a80789a59114d8 elfutils-0.164.tar.bz2 +b98b9495e5655a672dbcb83e1a180f8e llvm-3.7.0.src.tar.xz +7444bbbd999b53bec6a60608a5301f4c xbitmaps-1.1.1.tar.bz2 +1e6a458429e850fc93c1f3b6dc00a48f libpng-1.6.19.tar.xz +fdfb0ad9cfceed60e3bfe9f18765aa0d xcursor-themes-1.0.4.tar.bz2 +4af1deeb7c5f4cad62e65957d98d6758 xkeyboard-config-2.15.tar.bz2 +397e405566651150490ff493e463f1ad xorg-server-1.17.2.tar.bz2 +ace78aec799b1cf6dfaea55d3879ed9f libpciaccess-0.13.4.tar.bz2 +e588622e375e7d578e9df320f1ace2de pixman-0.32.8.tar.gz +96f6620a9b005a503e7b44b0b528287d libepoxy-1.3.1.tar.bz2 +9dc53067556d2dd567808fd509529dd6 Linux-PAM-1.2.1.tar.bz2 +99eebf171e6c7bffc42d4fc430d47454 xf86-input-evdev-2.9.2.tar.bz2 +b66443bb664cfaf2ba7b3f8c238ea951 libevdev-1.4.4.tar.xz +29654190e37310b87e44a14c229967ee xf86-video-ati-7.5.0.tar.bz2 +fa196a66e52c0c624fe5d350af7a5e7b xf86-video-intel-2.99.917.tar.bz2 +59a6f076cdacb5f6945dac809bcf4906 twm-1.0.9.tar.bz2 +0d7f0e6390d132ae59876b3870e5785d xterm-320.tgz +4e928452dfaf73851413a2d8b8c76388 xinit-1.3.4.tar.bz2 +c685ef0b8e9f27b5e3db5db12b268ac6 Python-2.7.10.tar.xz +5f07d5079327be83f450ecc459ffe249 python-2.7.10-docs-html.tar.bz2 diff --git a/phase2/init.sh b/phase2/init.sh index b134e49..e85bcb7 100755 --- a/phase2/init.sh +++ b/phase2/init.sh @@ -4,7 +4,7 @@ set +h # disable hashall shopt -s -o pipefail source "$MOUNT_POINT/common/functions.sh" -echo 'export PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin' >> "$MOUNT_POINT/config" +echo 'export PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin' >> "$MOUNT_POINT/.config" mkdir -pv $MOUNT_POINT/{dev,proc,sys,run} @@ -19,10 +19,10 @@ for i in ${_list[@]}; do echo "${i} --> Already Built" else echo "Building---> ${i}" - enterChrootTmp "source config && cd /phase2/$i && (bash build.sh |& tee build.log ) || false" + enterChrootTmp "source /.config && cd /phase2/$i && (bash build.sh |& tee build.log ) || false" echo "Build ---> ${i} completed" touch DONE fi popd;; esac -done \ No newline at end of file +done diff --git a/phase3/init.sh b/phase3/init.sh index 06d9056..65a75c5 100755 --- a/phase3/init.sh +++ b/phase3/init.sh @@ -5,7 +5,7 @@ shopt -s -o pipefail source "$MOUNT_POINT/common/functions.sh" -_list=(bash network clock inputrc shell fstab linux-kernel grub lsb lsb-release sudo dpkg unzip openssl wget cert curl libgpg-error libksba libgcrypt libassuan pth pin-entry npth gnupg apt) +_list=(bash network clock inputrc shell fstab linux-kernel grub lsb lsb-release linux-pam shadow sudo dpkg unzip openssl wget cert curl libgpg-error libksba libgcrypt libassuan pth pin-entry npth gnupg apt) for i in ${_list[@]}; do case $i in @@ -16,7 +16,7 @@ for i in ${_list[@]}; do echo "${i} --> Already Built" else echo "Building---> ${i}" - enterChroot "source config && cd /phase3/$i && (bash build.sh |& tee build.log ) || false" + enterChroot "source /.config && cd /phase3/$i && (bash build.sh |& tee build.log ) || false" echo "Build ---> ${i} completed" touch DONE fi diff --git a/phase3/linux-pam/.gitignore b/phase3/linux-pam/.gitignore new file mode 100644 index 0000000..13a1d51 --- /dev/null +++ b/phase3/linux-pam/.gitignore @@ -0,0 +1,7 @@ +*.tar.* +*.zip +*.log +*~ +*.*~ +.*~ +DONE diff --git a/phase3/linux-pam/build.sh b/phase3/linux-pam/build.sh new file mode 100755 index 0000000..d9c828b --- /dev/null +++ b/phase3/linux-pam/build.sh @@ -0,0 +1,110 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="Linux-PAM" +PKG_VERSION="1.2.1" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --libdir=/usr/lib \ + --enable-securedir=/lib/security && + make $MAKE_PARALLEL + + install -v -dm755 /etc/pam.d && + cat > /etc/pam.d/other << "EOF" +auth required pam_deny.so +account required pam_deny.so +password required pam_deny.so +session required pam_deny.so +EOF +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + rm -rfv /etc/pam.d + + make $MAKE_PARALLEL install && + chmod -v 4755 /sbin/unix_chkpwd && + + for file in pam pam_misc pamc + do + mv -v /usr/lib/lib${file}.so.* /lib && + ln -sfv ../../../lib/$(readlink /usr/lib/lib${file}.so) /usr/lib/lib${file}.so + done + + install -v -dm755 /etc/pam.d + cat > /etc/pam.d/system-account << "EOF" +# Begin /etc/pam.d/system-account + +account required pam_unix.so + +# End /etc/pam.d/system-account +EOF + + cat > /etc/pam.d/system-auth << "EOF" +# Begin /etc/pam.d/system-auth + +auth required pam_unix.so + +# End /etc/pam.d/system-auth +EOF + + cat > /etc/pam.d/system-session << "EOF" +# Begin /etc/pam.d/system-session + +session required pam_unix.so + +# End /etc/pam.d/system-session +EOF + + cat > /etc/pam.d/system-password << "EOF" +# Begin /etc/pam.d/system-password + +# use sha512 hash for encryption, use shadow, and try to use any previously +# defined authentication token (chosen password) set by any prior module +password required pam_unix.so sha512 shadow try_first_pass + +# End /etc/pam.d/system-password +EOF + + cat > /etc/pam.d/other << "EOF" +# Begin /etc/pam.d/other + +auth required pam_warn.so +auth required pam_deny.so +account required pam_warn.so +account required pam_deny.so +password required pam_warn.so +password required pam_deny.so +session required pam_warn.so +session required pam_deny.so + +# End /etc/pam.d/other +EOF +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase3/shadow/.gitignore b/phase3/shadow/.gitignore new file mode 100644 index 0000000..13a1d51 --- /dev/null +++ b/phase3/shadow/.gitignore @@ -0,0 +1,7 @@ +*.tar.* +*.zip +*.log +*~ +*.*~ +.*~ +DONE diff --git a/phase3/shadow/build.sh b/phase3/shadow/build.sh new file mode 100644 index 0000000..c6cc5ab --- /dev/null +++ b/phase3/shadow/build.sh @@ -0,0 +1,173 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="shadow" +PKG_VERSION="4.2.1" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.xz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + sed -i 's/groups$(EXEEXT) //' src/Makefile.in && + find man -name Makefile.in -exec sed -i 's/groups\.1 / /' {} \; && + + sed -i -e 's@#ENCRYPT_METHOD DES@ENCRYPT_METHOD SHA512@' \ + -e 's@/var/spool/mail@/var/mail@' etc/login.defs && + + sed -i 's/1000/999/' etc/useradd && + + ./configure --sysconfdir=/etc --with-group-name-max-length=32 && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install && + mv -v /usr/bin/passwd /bin + sed -i 's/yes/no/' /etc/default/useradd + + install -v -m644 /etc/login.defs /etc/login.defs.orig && + for FUNCTION in FAIL_DELAY \ + FAILLOG_ENAB \ + LASTLOG_ENAB \ + MAIL_CHECK_ENAB \ + OBSCURE_CHECKS_ENAB \ + PORTTIME_CHECKS_ENAB \ + QUOTAS_ENAB \ + CONSOLE MOTD_FILE \ + FTMP_FILE NOLOGINS_FILE \ + ENV_HZ PASS_MIN_LEN \ + SU_WHEEL_ONLY \ + CRACKLIB_DICTPATH \ + PASS_CHANGE_TRIES \ + PASS_ALWAYS_WARN \ + CHFN_AUTH ENCRYPT_METHOD \ + ENVIRON_FILE + do + sed -i "s/^${FUNCTION}/# &/" /etc/login.defs + done + + cat > /etc/pam.d/login << "EOF" +# Begin /etc/pam.d/login + +# Set failure delay before next prompt to 3 seconds +auth optional pam_faildelay.so delay=3000000 + +# Check to make sure that the user is allowed to login +auth requisite pam_nologin.so + +# Check to make sure that root is allowed to login +# Disabled by default. You will need to create /etc/securetty +# file for this module to function. See man 5 securetty. +#auth required pam_securetty.so + +# Additional group memberships - disabled by default +#auth optional pam_group.so + +# include the default auth settings +auth include system-auth + +# check access for the user +account required pam_access.so + +# include the default account settings +account include system-account + +# Set default environment variables for the user +session required pam_env.so + +# Set resource limits for the user +session required pam_limits.so + +# Display date of last login - Disabled by default +#session optional pam_lastlog.so + +# Display the message of the day - Disabled by default +#session optional pam_motd.so + +# Check user's mail - Disabled by default +#session optional pam_mail.so standard quiet + +# include the default session and password settings +session include system-session +password include system-password + +# End /etc/pam.d/login +EOF + + cat > /etc/pam.d/passwd << "EOF" +# Begin /etc/pam.d/passwd + +password include system-password + +# End /etc/pam.d/passwd +EOF + + cat > /etc/pam.d/su << "EOF" +# Begin /etc/pam.d/su + +# always allow root +auth sufficient pam_rootok.so +auth include system-auth + +# include the default account settings +account include system-account + +# Set default environment variables for the service user +session required pam_env.so + +# include system session defaults +session include system-session + +# End /etc/pam.d/su +EOF + + cat > /etc/pam.d/chage << "EOF" +#Begin /etc/pam.d/chage + +# always allow root +auth sufficient pam_rootok.so + +# include system defaults for auth account and session +auth include system-auth +account include system-account +session include system-session + +# Always permit for authentication updates +password required pam_permit.so + +# End /etc/pam.d/chage +EOF + + for PROGRAM in chfn chgpasswd chpasswd chsh groupadd groupdel \ + groupmems groupmod newusers useradd userdel usermod + do + install -v -m644 /etc/pam.d/chage /etc/pam.d/${PROGRAM} + sed -i "s/chage/$PROGRAM/" /etc/pam.d/${PROGRAM} + done + + [ -f /etc/login.access ] && mv -v /etc/login.access{,.NOUSE} + [ -f /etc/limits ] && mv -v /etc/limits{,.NOUSE} +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase3/sudo/build.sh b/phase3/sudo/build.sh index 3bf43fa..1d384a9 100644 --- a/phase3/sudo/build.sh +++ b/phase3/sudo/build.sh @@ -39,6 +39,25 @@ function check() { function instal() { make $MAKE_PARALLEL install && ln -sfv libsudo_util.so.0.0.0 /usr/lib/sudo/libsudo_util.so.0 + + cat > /etc/pam.d/sudo << "EOF" +# Begin /etc/pam.d/sudo + +# include the default auth settings +auth include system-auth + +# include the default account settings +account include system-account + +# Set default environment variables for the service user +session required pam_env.so + +# include system session defaults +session include system-session + +# End /etc/pam.d/sudo +EOF +chmod 644 /etc/pam.d/sudo } function clean() { diff --git a/phase4/check/build.sh b/phase4/check/build.sh new file mode 100755 index 0000000..a2ba596 --- /dev/null +++ b/phase4/check/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="check" +PKG_VERSION="0.10.0" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.gz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr --disable-static && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL -k check +} + +function instal() { + make $MAKE_PARALLEL docdir=/usr/share/doc/${PKG_NAME}-${PKG_VERSION} install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/dejagnu/build.sh b/phase4/dejagnu/build.sh new file mode 100755 index 0000000..642b478 --- /dev/null +++ b/phase4/dejagnu/build.sh @@ -0,0 +1,44 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="dejagnu" +PKG_VERSION="1.5.3" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.gz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr && + makeinfo --html --no-split -o doc/dejagnu.html doc/dejagnu.texi && + makeinfo --plaintext -o doc/dejagnu.txt doc/dejagnu.texi +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install && + install -v -dm755 /usr/share/doc/${PKG_NAME}-${PKG_VERSION} && + install -v -m644 doc/dejagnu.{html,txt} \ + /usr/share/doc/${PKG_NAME}-${PKG_VERSION} +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/elfutils/build.sh b/phase4/elfutils/build.sh new file mode 100755 index 0000000..7147f3c --- /dev/null +++ b/phase4/elfutils/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="elfutils" +PKG_VERSION="0.164" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr --program-prefix="eu-" && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/expect/build.sh b/phase4/expect/build.sh new file mode 100755 index 0000000..82438cc --- /dev/null +++ b/phase4/expect/build.sh @@ -0,0 +1,45 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="expect" +PKG_VERSION="5.45" + +TARBALL="${PKG_NAME}${PKG_VERSION}.tar.gz" +SRC_DIR="${PKG_NAME}${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr \ + --with-tcl=/usr/lib \ + --enable-shared \ + --mandir=/usr/share/man \ + --with-tclinclude=/usr/include && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL test +} + +function instal() { + make $MAKE_PARALLEL install && + ln -svf ${PKG_NAME}${PKG_VERSION}/lib${PKG_NAME}${PKG_VERSION}.so /usr/lib +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/exports b/phase4/exports new file mode 100644 index 0000000..7f16c55 --- /dev/null +++ b/phase4/exports @@ -0,0 +1,5 @@ +#!/bin/sh + +export XORG_PREFIX="/usr" +export XORG_CONFIG="--prefix=$XORG_PREFIX --sysconfdir=/etc \ + --localstatedir=/var --disable-static" diff --git a/phase4/font-config/build.sh b/phase4/font-config/build.sh new file mode 100755 index 0000000..3f33142 --- /dev/null +++ b/phase4/font-config/build.sh @@ -0,0 +1,54 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="fontconfig" +PKG_VERSION="2.11.1" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --disable-docs \ + --docdir=/usr/share/doc/${PKG_NAME}-${PKG_VERSION} && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install + + install -v -dm755 \ + /usr/share/{man/man{3,5},doc/${PKG_NAME}-${PKG_VERSION}/fontconfig-devel} && + install -v -m644 fc-*/*.1 /usr/share/man/man1 && + install -v -m644 doc/*.3 /usr/share/man/man3 && + install -v -m644 doc/fonts-conf.5 /usr/share/man/man5 && + install -v -m644 doc/fontconfig-devel/* \ + /usr/share/doc/${PKG_NAME}-${PKG_VERSION}/fontconfig-devel && + install -v -m644 doc/*.{pdf,sgml,txt,html} \ + /usr/share/doc/${PKG_NAME}-${PKG_VERSION} +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/freetype/build.sh b/phase4/freetype/build.sh new file mode 100755 index 0000000..f289057 --- /dev/null +++ b/phase4/freetype/build.sh @@ -0,0 +1,47 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="freetype" +PKG_VERSION="2.6.1" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + sed -i -e "/AUX.*.gxvalid/s@^# @@" \ + -e "/AUX.*.otvalid/s@^# @@" \ + modules.cfg && + + sed -ri -e 's:.*(#.*SUBPIXEL.*) .*:\1:' \ + include/freetype/config/ftoption.h && + + ./configure --prefix=/usr --disable-static && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/harfbuzz/build.sh b/phase4/harfbuzz/build.sh new file mode 100755 index 0000000..3bc0f73 --- /dev/null +++ b/phase4/harfbuzz/build.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="harfbuzz" +PKG_VERSION="1.1.0" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" + rm -rf /phase4/freetype/DONE +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/init.sh b/phase4/init.sh new file mode 100755 index 0000000..fc805d3 --- /dev/null +++ b/phase4/init.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +source "$MOUNT_POINT/common/functions.sh" + +_list=(util-macros xorg-protocol-headers libXau libXdmcp tcl expect dejagnu libffi python2 python3 check libxml2 xcb-proto libxcb freetype harfbuzz freetype font-config xorg-libraries xcb-util xcb-util-image xcb-util-keysyms xcb-util-renderutil xcb-util-wm libpciaccess libdrm wayland llvm elfutils mesa xbitmaps libpng xorg-applications xcursor-themes xorg-fonts xkeyboard-config libpciaccess pixman libepoxy systemd xorg-server libevdev xorg-evdev-driver linux-kernel xorg-intel-driver twm xterm xclock xinit) + +for i in ${_list[@]}; do + case $i in + + * ) + pushd ${i} || (echo "${i} --> Not found in list error -->$?";exit 1) + if [ -e DONE ]; then + echo "${i} --> Already Built" + else + echo "Building---> ${i}" + enterChroot "source /.config && source /phase4/exports && cd /phase4/$i && (bash build.sh |& tee build.log ) || false" + echo "Build ---> ${i} completed" + touch DONE + fi + popd;; + esac +done diff --git a/phase4/libXau/build.sh b/phase4/libXau/build.sh new file mode 100755 index 0000000..ebc8986 --- /dev/null +++ b/phase4/libXau/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="libXau" +PKG_VERSION="1.0.8" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" "${BUILD_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/libXdmcp/build.sh b/phase4/libXdmcp/build.sh new file mode 100755 index 0000000..26bd21b --- /dev/null +++ b/phase4/libXdmcp/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="libXdmcp" +PKG_VERSION="1.1.2" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/libdrm/build.sh b/phase4/libdrm/build.sh new file mode 100755 index 0000000..344debf --- /dev/null +++ b/phase4/libdrm/build.sh @@ -0,0 +1,42 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="libdrm" +PKG_VERSION="2.4.65" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + sed -e "/pthread-stubs/d" -i configure.ac && + autoreconf -fiv && + ./configure --prefix=/usr --enable-udev && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/libepoxy/build.sh b/phase4/libepoxy/build.sh new file mode 100755 index 0000000..a750e82 --- /dev/null +++ b/phase4/libepoxy/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="libepoxy" +PKG_VERSION="1.3.1" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL -k check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/libevdev/build.sh b/phase4/libevdev/build.sh new file mode 100755 index 0000000..b58a3b4 --- /dev/null +++ b/phase4/libevdev/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="libevdev" +PKG_VERSION="1.4.4" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.xz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr --disable-static && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/libffi/build.sh b/phase4/libffi/build.sh new file mode 100755 index 0000000..8d3e4ca --- /dev/null +++ b/phase4/libffi/build.sh @@ -0,0 +1,47 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="libffi" +PKG_VERSION="3.2.1" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.gz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + sed -e '/^includesdir/ s/$(libdir).*$/$(includedir)/' \ + -i include/Makefile.in && + + sed -e '/^includedir/ s/=.*$/=@includedir@/' \ + -e 's/^Cflags: -I${includedir}/Cflags:/' \ + -i libffi.pc.in && + + ./configure --prefix=/usr --disable-static && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/libpciaccess/build.sh b/phase4/libpciaccess/build.sh new file mode 100755 index 0000000..b93a7bf --- /dev/null +++ b/phase4/libpciaccess/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="libpciaccess" +PKG_VERSION="0.13.4" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr --disable-static && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/libpng/build.sh b/phase4/libpng/build.sh new file mode 100755 index 0000000..4176527 --- /dev/null +++ b/phase4/libpng/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="libpng" +PKG_VERSION="1.6.19" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.xz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr --disable-static && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/libxcb/build.sh b/phase4/libxcb/build.sh new file mode 100755 index 0000000..dfdfb5c --- /dev/null +++ b/phase4/libxcb/build.sh @@ -0,0 +1,43 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="libxcb" +PKG_VERSION="1.11.1" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + sed -i "s/pthread-stubs//" configure && + ./configure $XORG_CONFIG \ + --enable-xinput \ + --docdir='${datadir}'/doc/${PKG_NAME}-${PKG_VERSION} && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/libxml2/build.sh b/phase4/libxml2/build.sh new file mode 100755 index 0000000..6e1ebcc --- /dev/null +++ b/phase4/libxml2/build.sh @@ -0,0 +1,48 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="libxml2" +PKG_VERSION="2.9.2" + +TEST_TARBALL="xmlts20130923.tar.gz" +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.gz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + sed \ + -e /xmlInitializeCatalog/d \ + -e 's/((ent->checked =.*&&/(((ent->checked == 0) ||\ + ((ent->children == NULL) \&\& (ctxt->options \& XML_PARSE_NOENT))) \&\&/' \ + -i parser.c + + ./configure --prefix=/usr --disable-static --with-history && + make $MAKE_PARALLEL +} + +function check() { + tar xf ../${TEST_TARBALL} + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/linux-kernel/.gitignore b/phase4/linux-kernel/.gitignore new file mode 100644 index 0000000..13a1d51 --- /dev/null +++ b/phase4/linux-kernel/.gitignore @@ -0,0 +1,7 @@ +*.tar.* +*.zip +*.log +*~ +*.*~ +.*~ +DONE diff --git a/phase4/linux-kernel/build.sh b/phase4/linux-kernel/build.sh new file mode 100644 index 0000000..64ac5b4 --- /dev/null +++ b/phase4/linux-kernel/build.sh @@ -0,0 +1,56 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="linux" +PKG_VERSION="4.2" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.xz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + make $MAKE_PARALLEL mrproper + make $MAKE_PARALLEL defconfig + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL modules_install + cp -v arch/x86/boot/bzImage /boot/$VM_LINUZ + cp -v System.map /boot/$SYSTEM_MAP + cp -v .config /boot/$CONFIG_BACKUP + install -d /usr/share/doc/linux-4.2 + cp -r Documentation/* /usr/share/doc/linux-4.2 + + install -v -m755 -d /etc/modprobe.d + cat > /etc/modprobe.d/usb.conf << "EOF" +# Begin /etc/modprobe.d/usb.conf + +install ohci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe -i ohci_hcd ; true +install uhci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe -i uhci_hcd ; true + +# End /etc/modprobe.d/usb.conf +EOF +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/llvm/build.sh b/phase4/llvm/build.sh new file mode 100755 index 0000000..6a75e68 --- /dev/null +++ b/phase4/llvm/build.sh @@ -0,0 +1,59 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="llvm" +PKG_VERSION="3.7.0" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.src.tar.xz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}.src" +BUILD_DIR="${PKG_NAME}-build" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + sed -e "s:/docs/llvm:/share/doc/${PKG_NAME}-${PKG_VERSION}:" \ + -i Makefile.config.in && + + mkdir "$BUILD_DIR" && + cd "$BUILD_DIR" + + CC=gcc CXX=g++ \ + ../configure --prefix=/usr \ + --sysconfdir=/etc \ + --enable-libffi \ + --enable-optimized \ + --enable-shared \ + --disable-assertions && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL -k check-all +} + +function instal() { + make $MAKE_PARALLEL install && + + for file in /usr/lib/lib{clang,LLVM,LTO}*.a + do + test -f $file && chmod -v 644 $file + done && + unset file +} + +function clean() { + rm -rf "${SRC_DIR}" "${BUILD_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/mesa/build.sh b/phase4/mesa/build.sh new file mode 100755 index 0000000..aa49082 --- /dev/null +++ b/phase4/mesa/build.sh @@ -0,0 +1,53 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="mesa" +PKG_VERSION="11.0.2" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.xz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure CFLAGS="-O2" CXXFLAGS="-O2" \ + --prefix=/usr \ + --sysconfdir=/etc \ + --enable-texture-float \ + --enable-gles1 \ + --enable-gles2 \ + --enable-xa \ + --enable-glx-tls \ + --enable-osmesa \ + --with-egl-platforms="drm,x11,wayland" \ + --with-gallium-drivers="nouveau,r300,r600,radeonsi,svga,swrast" && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install + + install -v -dm755 /usr/share/doc/${PKG_NAME}-${PKG_VERSION} && + cp -rfv docs/* /usr/share/doc/${PKG_NAME}-${PKG_VERSION} +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/pixman/build.sh b/phase4/pixman/build.sh new file mode 100755 index 0000000..1653893 --- /dev/null +++ b/phase4/pixman/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="pixman" +PKG_VERSION="0.32.8" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.gz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr --disable-static && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/python2/build.sh b/phase4/python2/build.sh new file mode 100755 index 0000000..9f79441 --- /dev/null +++ b/phase4/python2/build.sh @@ -0,0 +1,52 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="Python" +PKG_VERSION="2.7.10" + +DOCS_TARBALL="python-${PKG_VERSION}-docs-html.tar.bz2" +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.xz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr \ + --enable-shared \ + --with-system-expat \ + --with-system-ffi \ + --enable-unicode=ucs4 && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL test +} + +function instal() { + make $MAKE_PARALLEL install && + chmod -v 755 /usr/lib/libpython2.7.so.1.0 + + install -v -dm755 /usr/share/doc/python-${PKG_VERSION} && + tar --strip-components=1 -C /usr/share/doc/python-${PKG_VERSION} \ + --no-same-owner -xvf /source/${DOCS_TARBALL} && + find /usr/share/doc/python-${PKG_VERSION} -type d -exec chmod 0755 {} \; && + find /usr/share/doc/python-${PKG_VERSION} -type f -exec chmod 0644 {} \; +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/python3/build.sh b/phase4/python3/build.sh new file mode 100755 index 0000000..ef3093e --- /dev/null +++ b/phase4/python3/build.sh @@ -0,0 +1,57 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="Python" +PKG_VERSION="3.5.0" + +DOCS_TARBALL="python-${PKG_VERSION}-docs-html.tar.bz2" +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.xz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + CXX="/usr/bin/g++" \ + ./configure --prefix=/usr \ + --enable-shared \ + --with-system-expat \ + --with-system-ffi \ + --without-ensurepip && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install && + chmod -v 755 /usr/lib/libpython3.5m.so && + chmod -v 755 /usr/lib/libpython3.so + + install -v -dm755 /usr/share/doc/python-${PKG_VERSION}/html && + tar --strip-components=1 \ + --no-same-owner \ + --no-same-permissions \ + -C /usr/share/doc/python-${PKG_VERSION}/html \ + -xvf /source/${DOCS_TARBALL} + + echo "export PYTHONDOCS=/usr/share/doc/python-${PKG_VERSION}/html" >> /etc/profile +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/systemd/build.sh b/phase4/systemd/build.sh new file mode 100755 index 0000000..dc0aa8d --- /dev/null +++ b/phase4/systemd/build.sh @@ -0,0 +1,86 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="systemd" +PKG_VERSION="224" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.xz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + patch -Np1 -i ../systemd-${PKG_VERSION}-compat-1.patch + + sed -e 's:test/udev-test.pl ::g' \ + -e 's:test-copy$(EXEEXT) ::g' \ + -i Makefile.in + + cc_cv_CFLAGS__flto=no \ + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --with-rootprefix= \ + --with-rootlibdir=/lib \ + --enable-split-usr \ + --disable-firstboot \ + --disable-ldconfig \ + --disable-sysusers \ + --without-python \ + --docdir=/usr/share/doc/systemd-${PKG_VERSION} && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL -k check +} + +function instal() { + make $MAKE_PARALLEL install + + mv -v /usr/lib/libnss_{myhostname,mymachines,resolve}.so.2 /lib + rm -rfv /usr/lib/rpm + sed -i "s:0775 root lock:0755 root root:g" /usr/lib/tmpfiles.d/legacy.conf + + cat >> /etc/pam.d/system-session << "EOF" && +# Begin Systemd addition + +session required pam_loginuid.so +session optional pam_systemd.so + +# End Systemd addition +EOF + + cat > /etc/pam.d/systemd-user << "EOF" +# Begin /etc/pam.d/systemd-user + +account required pam_access.so +account include system-account + +session required pam_env.so +session required pam_limits.so +session include system-session + +auth required pam_deny.so +password required pam_deny.so + +# End /etc/pam.d/systemd-user +EOF +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/tcl/build.sh b/phase4/tcl/build.sh new file mode 100755 index 0000000..ee06516 --- /dev/null +++ b/phase4/tcl/build.sh @@ -0,0 +1,68 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="tcl" +PKG_VERSION="8.6.4" + +DOCS_TARBALL="${PKG_NAME}${PKG_VERSION}-html.tar.gz" +TARBALL="${PKG_NAME}${PKG_VERSION}-src.tar.gz" +SRC_DIR="${PKG_NAME}${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + tar -xf ../${DOCS_TARBALL} --strip-components=1 + + export SRCDIR=`pwd` && + cd unix && + + ./configure --prefix=/usr \ + --mandir=/usr/share/man \ + $([ $(uname -m) = x86_64 ] && echo --enable-64bit) && + make $MAKE_PARALLEL && + + sed -e "s#$SRCDIR/unix#/usr/lib#" \ + -e "s#$SRCDIR#/usr/include#" \ + -i tclConfig.sh && + + sed -e "s#$SRCDIR/unix/pkgs/tdbc1.0.3#/usr/lib/tdbc1.0.3#" \ + -e "s#$SRCDIR/pkgs/tdbc1.0.3/generic#/usr/include#" \ + -e "s#$SRCDIR/pkgs/tdbc1.0.3/library#/usr/lib/tcl8.6#" \ + -e "s#$SRCDIR/pkgs/tdbc1.0.3#/usr/include#" \ + -i pkgs/tdbc1.0.3/tdbcConfig.sh && + + sed -e "s#$SRCDIR/unix/pkgs/itcl4.0.3#/usr/lib/itcl4.0.3#" \ + -e "s#$SRCDIR/pkgs/itcl4.0.3/generic#/usr/include#" \ + -e "s#$SRCDIR/pkgs/itcl4.0.3#/usr/include#" \ + -i pkgs/itcl4.0.3/itclConfig.sh && + + unset SRCDIR +} + +function check() { + make $MAKE_PARALLEL test +} + +function instal() { + make $MAKE_PARALLEL install && + make $MAKE_PARALLEL install-private-headers && + ln -sfv tclsh8.6 /usr/bin/tclsh && + chmod -v 755 /usr/lib/libtcl8.6.so +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/twm/build.sh b/phase4/twm/build.sh new file mode 100755 index 0000000..e83c350 --- /dev/null +++ b/phase4/twm/build.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="twm" +PKG_VERSION="1.0.9" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + sed -i -e '/^rcdir =/s,^\(rcdir = \).*,\1/etc/X11/app-defaults,' src/Makefile.in && + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/util-macros/build.sh b/phase4/util-macros/build.sh new file mode 100755 index 0000000..60e13a3 --- /dev/null +++ b/phase4/util-macros/build.sh @@ -0,0 +1,39 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="util-macros" +PKG_VERSION="1.19.0" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/wayland/build.sh b/phase4/wayland/build.sh new file mode 100755 index 0000000..cf03d54 --- /dev/null +++ b/phase4/wayland/build.sh @@ -0,0 +1,42 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="wayland" +PKG_VERSION="1.9.0" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.xz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr \ + --disable-static \ + --disable-documentation && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xbitmaps/build.sh b/phase4/xbitmaps/build.sh new file mode 100755 index 0000000..6fcb6d5 --- /dev/null +++ b/phase4/xbitmaps/build.sh @@ -0,0 +1,39 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xbitmaps" +PKG_VERSION="1.1.1" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xcb-proto/build.sh b/phase4/xcb-proto/build.sh new file mode 100755 index 0000000..c9579d7 --- /dev/null +++ b/phase4/xcb-proto/build.sh @@ -0,0 +1,39 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xcb-proto" +PKG_VERSION="1.11" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xcb-util-image/build.sh b/phase4/xcb-util-image/build.sh new file mode 100755 index 0000000..5337504 --- /dev/null +++ b/phase4/xcb-util-image/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xcb-util-image" +PKG_VERSION="0.4.0" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + LD_LIBRARY_PATH=$XORG_PREFIX/lib make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xcb-util-keysyms/build.sh b/phase4/xcb-util-keysyms/build.sh new file mode 100755 index 0000000..1ba1187 --- /dev/null +++ b/phase4/xcb-util-keysyms/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xcb-util-keysyms" +PKG_VERSION="0.4.0" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + LD_LIBRARY_PATH=$XORG_PREFIX/lib make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xcb-util-renderutil/build.sh b/phase4/xcb-util-renderutil/build.sh new file mode 100755 index 0000000..7202681 --- /dev/null +++ b/phase4/xcb-util-renderutil/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xcb-util-renderutil" +PKG_VERSION="0.3.9" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xcb-util-wm/build.sh b/phase4/xcb-util-wm/build.sh new file mode 100755 index 0000000..a593fc3 --- /dev/null +++ b/phase4/xcb-util-wm/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xcb-util-wm" +PKG_VERSION="0.4.1" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + LD_LIBRARY_PATH=$XORG_PREFIX/lib make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xcb-util/build.sh b/phase4/xcb-util/build.sh new file mode 100755 index 0000000..081f1e0 --- /dev/null +++ b/phase4/xcb-util/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xcb-util" +PKG_VERSION="0.4.0" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xclock/build.sh b/phase4/xclock/build.sh new file mode 100755 index 0000000..5b31989 --- /dev/null +++ b/phase4/xclock/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xclock" +PKG_VERSION="1.0.7" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xcursor-themes/build.sh b/phase4/xcursor-themes/build.sh new file mode 100755 index 0000000..9d06010 --- /dev/null +++ b/phase4/xcursor-themes/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xcursor-themes" +PKG_VERSION="1.0.4" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xinit/build.sh b/phase4/xinit/build.sh new file mode 100755 index 0000000..0d2ad2a --- /dev/null +++ b/phase4/xinit/build.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xinit" +PKG_VERSION="1.3.4" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG \ + --with-xinitdir=/etc/X11/xinit && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xkeyboard-config/build.sh b/phase4/xkeyboard-config/build.sh new file mode 100755 index 0000000..5414959 --- /dev/null +++ b/phase4/xkeyboard-config/build.sh @@ -0,0 +1,42 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xkeyboard-config" +PKG_VERSION="2.15" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure --prefix=/usr \ + --disable-runtime-deps \ + --with-xkb-rules-symlink=xorg && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xorg-applications/build.sh b/phase4/xorg-applications/build.sh new file mode 100755 index 0000000..b71a963 --- /dev/null +++ b/phase4/xorg-applications/build.sh @@ -0,0 +1,96 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +function as_root() +{ + if [ $EUID = 0 ]; then $* + elif [ -x /usr/bin/sudo ]; then sudo $* + else su -c \\"$*\\" + fi +} + +export -f as_root + +function prepare() { + cat > app-7.7.md5 << "EOF" +53a48e1fdfec29ab2e89f86d4b7ca902 bdftopcf-1.0.5.tar.bz2 +25dab02f8e40d5b71ce29a07dc901b8c iceauth-1.0.7.tar.bz2 +c4a3664e08e5a47c120ff9263ee2f20c luit-1.1.1.tar.bz2 +18c429148c96c2079edda922a2b67632 mkfontdir-1.0.7.tar.bz2 +9bdd6ebfa62b1bbd474906ac86a40fd8 mkfontscale-1.1.2.tar.bz2 +e238c89dabc566e1835e1ecb61b605b9 sessreg-1.1.0.tar.bz2 +2c47a1b8e268df73963c4eb2316b1a89 setxkbmap-1.3.1.tar.bz2 +3a93d9f0859de5d8b65a68a125d48f6a smproxy-1.0.6.tar.bz2 +f0b24e4d8beb622a419e8431e1c03cd7 x11perf-1.6.0.tar.bz2 +7d6003f32838d5b688e2c8a131083271 xauth-1.0.9.tar.bz2 +0066f23f69ca3ef62dcaeb74a87fdc48 xbacklight-1.2.1.tar.bz2 +9956d751ea3ae4538c3ebd07f70736a0 xcmsdb-1.0.5.tar.bz2 +b58a87e6cd7145c70346adad551dba48 xcursorgen-1.0.6.tar.bz2 +8809037bd48599af55dad81c508b6b39 xdpyinfo-1.3.2.tar.bz2 +fceddaeb08e32e027d12a71490665866 xdriinfo-1.0.5.tar.bz2 +249bdde90f01c0d861af52dc8fec379e xev-1.2.2.tar.bz2 +90b4305157c2b966d5180e2ee61262be xgamma-1.0.6.tar.bz2 +f5d490738b148cb7f2fe760f40f92516 xhost-1.0.7.tar.bz2 +305980ac78a6954e306a14d80a54c441 xinput-1.6.1.tar.bz2 +0012a8e3092cddf7f87b250f96bb38c5 xkbcomp-1.3.0.tar.bz2 +c747faf1f78f5a5962419f8bdd066501 xkbevd-1.1.4.tar.bz2 +502b14843f610af977dffc6cbf2102d5 xkbutils-1.0.4.tar.bz2 +0ae6bc2a8d3af68e9c76b1a6ca5f7a78 xkill-1.0.4.tar.bz2 +5dcb6e6c4b28c8d7aeb45257f5a72a7d xlsatoms-1.1.2.tar.bz2 +9fbf6b174a5138a61738a42e707ad8f5 xlsclients-1.1.3.tar.bz2 +2dd5ae46fa18abc9331bc26250a25005 xmessage-1.0.4.tar.bz2 +723f02d3a5f98450554556205f0a9497 xmodmap-1.0.9.tar.bz2 +6101f04731ffd40803df80eca274ec4b xpr-1.0.4.tar.bz2 +fae3d2fda07684027a643ca783d595cc xprop-1.2.2.tar.bz2 +441fdb98d2abc6051108b7075d948fc7 xrandr-1.4.3.tar.bz2 +b54c7e3e53b4f332d41ed435433fbda0 xrdb-1.1.0.tar.bz2 +a896382bc53ef3e149eaf9b13bc81d42 xrefresh-1.0.5.tar.bz2 +dcd227388b57487d543cab2fd7a602d7 xset-1.2.3.tar.bz2 +7211b31ec70631829ebae9460999aa0b xsetroot-1.1.1.tar.bz2 +558360176b718dee3c39bc0648c0d10c xvinfo-1.1.3.tar.bz2 +6b5d48464c5f366e91efd08b62b12d94 xwd-1.0.6.tar.bz2 +b777bafb674555e48fd8437618270931 xwininfo-1.1.3.tar.bz2 +3025b152b4f13fdffd0c46d0be587be6 xwud-1.0.4.tar.bz2 +EOF + + mkdir app +} + +function check() { + grep -v '^#' ../app-7.7.md5 | awk '{print $2}' | wget -i- -c \ + -B http://xorg.freedesktop.org/archive/individual/app/ && + md5sum -c ../app-7.7.md5 +} + +function build() { + for package in $(grep -v '^#' ../app-7.7.md5 | awk '{print $2}') + do + packagedir=${package%.tar.bz2} + tar -xf $package + pushd $packagedir + case $packagedir in + luit-[0-9]* ) + line1="#ifdef _XOPEN_SOURCE" + line2="# undef _XOPEN_SOURCE" + line3="# define _XOPEN_SOURCE 600" + line4="#endif" + + sed -i -e "s@#ifdef HAVE_CONFIG_H@$line1\n$line2\n$line3\n$line4\n\n&@" sys.c + unset line1 line2 line3 line4;; + + sessreg-* ) + sed -e 's/\$(CPP) \$(DEFS)/$(CPP) -P $(DEFS)/' -i man/Makefile.in;; + + esac + + ./configure $XORG_CONFIG + make $MAKE_PARALLEL + as_root make $MAKE_PARALLEL install + popd + rm -rf $packagedir + done +} + +prepare;pushd app;check;build;popd diff --git a/phase4/xorg-ati-driver/build.sh b/phase4/xorg-ati-driver/build.sh new file mode 100755 index 0000000..5cc162b --- /dev/null +++ b/phase4/xorg-ati-driver/build.sh @@ -0,0 +1,48 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xf86-video-ati" +PKG_VERSION="7.5.0" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install + + cat >> /etc/X11/xorg.conf.d/20-glamor.conf << "EOF" +Section "Device" + Identifier "radeon" + Driver "radeon" + Option "AccelMethod" "glamor" +EndSection +EOF +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xorg-evdev-driver/build.sh b/phase4/xorg-evdev-driver/build.sh new file mode 100755 index 0000000..6e544a8 --- /dev/null +++ b/phase4/xorg-evdev-driver/build.sh @@ -0,0 +1,40 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xf86-input-evdev" +PKG_VERSION="2.9.2" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xorg-fonts/build.sh b/phase4/xorg-fonts/build.sh new file mode 100755 index 0000000..2ffcb2d --- /dev/null +++ b/phase4/xorg-fonts/build.sh @@ -0,0 +1,80 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +function as_root() +{ + if [ $EUID = 0 ]; then $* + elif [ -x /usr/bin/sudo ]; then sudo $* + else su -c \\"$*\\" + fi +} + +export -f as_root + +function prepare() { + cat > font-7.7.md5 << "EOF" +23756dab809f9ec5011bb27fb2c3c7d6 font-util-1.3.1.tar.bz2 +0f2d6546d514c5cc4ecf78a60657a5c1 encodings-1.0.4.tar.bz2 +1347c3031b74c9e91dc4dfa53b12f143 font-adobe-100dpi-1.0.3.tar.bz2 +6c9f26c92393c0756f3e8d614713495b font-adobe-75dpi-1.0.3.tar.bz2 +66fb6de561648a6dce2755621d6aea17 font-adobe-utopia-100dpi-1.0.4.tar.bz2 +e99276db3e7cef6dccc8a57bc68aeba7 font-adobe-utopia-75dpi-1.0.4.tar.bz2 +fcf24554c348df3c689b91596d7f9971 font-adobe-utopia-type1-1.0.4.tar.bz2 +6d25f64796fef34b53b439c2e9efa562 font-alias-1.0.3.tar.bz2 +cc0726e4a277d6ed93b8e09c1f195470 font-arabic-misc-1.0.3.tar.bz2 +9f11ade089d689b9d59e0f47d26f39cd font-bh-100dpi-1.0.3.tar.bz2 +565494fc3b6ac08010201d79c677a7a7 font-bh-75dpi-1.0.3.tar.bz2 +c8b73a53dcefe3e8d3907d3500e484a9 font-bh-lucidatypewriter-100dpi-1.0.3.tar.bz2 +f6d65758ac9eb576ae49ab24c5e9019a font-bh-lucidatypewriter-75dpi-1.0.3.tar.bz2 +e8ca58ea0d3726b94fe9f2c17344be60 font-bh-ttf-1.0.3.tar.bz2 +53ed9a42388b7ebb689bdfc374f96a22 font-bh-type1-1.0.3.tar.bz2 +6b223a54b15ecbd5a1bc52312ad790d8 font-bitstream-100dpi-1.0.3.tar.bz2 +d7c0588c26fac055c0dd683fdd65ac34 font-bitstream-75dpi-1.0.3.tar.bz2 +5e0c9895d69d2632e2170114f8283c11 font-bitstream-type1-1.0.3.tar.bz2 +e452b94b59b9cfd49110bb49b6267fba font-cronyx-cyrillic-1.0.3.tar.bz2 +3e0069d4f178a399cffe56daa95c2b63 font-cursor-misc-1.0.3.tar.bz2 +0571bf77f8fab465a5454569d9989506 font-daewoo-misc-1.0.3.tar.bz2 +6e7c5108f1b16d7a1c7b2c9760edd6e5 font-dec-misc-1.0.3.tar.bz2 +bfb2593d2102585f45daa960f43cb3c4 font-ibm-type1-1.0.3.tar.bz2 +a2401caccbdcf5698e001784dbd43f1a font-isas-misc-1.0.3.tar.bz2 +cb7b57d7800fd9e28ec35d85761ed278 font-jis-misc-1.0.3.tar.bz2 +143c228286fe9c920ab60e47c1b60b67 font-micro-misc-1.0.3.tar.bz2 +96109d0890ad2b6b0e948525ebb0aba8 font-misc-cyrillic-1.0.3.tar.bz2 +6306c808f7d7e7d660dfb3859f9091d2 font-misc-ethiopic-1.0.3.tar.bz2 +e3e7b0fda650adc7eb6964ff3c486b1c font-misc-meltho-1.0.3.tar.bz2 +c88eb44b3b903d79fb44b860a213e623 font-misc-misc-1.1.2.tar.bz2 +56b0296e8862fc1df5cdbb4efe604e86 font-mutt-misc-1.0.3.tar.bz2 +e805feb7c4f20e6bfb1118d19d972219 font-schumacher-misc-1.1.2.tar.bz2 +6f3fdcf2454bf08128a651914b7948ca font-screen-cyrillic-1.0.4.tar.bz2 +beef61a9b0762aba8af7b736bb961f86 font-sony-misc-1.0.3.tar.bz2 +948f2e07810b4f31195185921470f68d font-sun-misc-1.0.3.tar.bz2 +829a3159389b7f96f629e5388bfee67b font-winitzki-cyrillic-1.0.3.tar.bz2 +3eeb3fb44690b477d510bbd8f86cf5aa font-xfree86-type1-1.0.4.tar.bz2 +EOF + + mkdir font +} + +function check() { + grep -v '^#' ../font-7.7.md5 | awk '{print $2}' | wget -i- -c \ + -B http://xorg.freedesktop.org/archive/individual/font/ && + md5sum -c ../font-7.7.md5 +} + +function build() { + for package in $(grep -v '^#' ../font-7.7.md5 | awk '{print $2}') + do + packagedir=${package%.tar.bz2} + tar -xf $package + pushd $packagedir + ./configure $XORG_CONFIG + make $MAKE_PARALLEL + as_root make $MAKE_PARALLEL install + popd + as_root rm -rf $packagedir + done +} + +prepare;pushd font;check;build;popd diff --git a/phase4/xorg-intel-driver/build.sh b/phase4/xorg-intel-driver/build.sh new file mode 100755 index 0000000..70e2602 --- /dev/null +++ b/phase4/xorg-intel-driver/build.sh @@ -0,0 +1,50 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xf86-video-intel" +PKG_VERSION="2.99.917" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + sed -i "/#include /a #include " src/uxa/intel_driver.c && + sed -i "/#include /a #include " src/sna/sna_driver.c && + ./configure $XORG_CONFIG --enable-kms-only && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install + + cat >> /etc/X11/xorg.conf.d/20-intel.conf << "EOF" +Section "Device" + Identifier "Intel Graphics" + Driver "intel" + Option "AccelMethod" "uxa" +EndSection +EOF +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xorg-libraries/build.sh b/phase4/xorg-libraries/build.sh new file mode 100755 index 0000000..3f218c7 --- /dev/null +++ b/phase4/xorg-libraries/build.sh @@ -0,0 +1,86 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +function as_root() +{ + if [ $EUID = 0 ]; then $* + elif [ -x /usr/bin/sudo ]; then sudo $* + else su -c \\"$*\\" + fi +} + +export -f as_root + +function prepare() { + cat > lib-7.7.md5 << "EOF" +c5ba432dd1514d858053ffe9f4737dd8 xtrans-1.3.5.tar.bz2 +2e36b73f8a42143142dda8129f02e4e0 libX11-1.6.3.tar.bz2 +52df7c4c1f0badd9f82ab124fb32eb97 libXext-1.3.3.tar.bz2 +d79d9fe2aa55eb0f69b1a4351e1368f7 libFS-1.0.7.tar.bz2 +addfb1e897ca8079531669c7c7711726 libICE-1.0.9.tar.bz2 +499a7773c65aba513609fe651853c5f3 libSM-1.2.2.tar.bz2 +7a773b16165e39e938650bcc9027c1d5 libXScrnSaver-1.2.2.tar.bz2 +8f5b5576fbabba29a05f3ca2226f74d3 libXt-1.1.5.tar.bz2 +41d92ab627dfa06568076043f3e089e4 libXmu-1.1.2.tar.bz2 +769ee12a43611cdebd38094eaf83f3f0 libXpm-3.5.11.tar.bz2 +e5e06eb14a608b58746bdd1c0bd7b8e3 libXaw-1.0.13.tar.bz2 +b985b85f8b9386c85ddcfe1073906b4d libXfixes-5.0.1.tar.bz2 +f7a218dcbf6f0848599c6c36fc65c51a libXcomposite-0.4.4.tar.bz2 +5db92962b124ca3a8147daae4adbd622 libXrender-0.9.9.tar.bz2 +1e7c17afbbce83e2215917047c57d1b3 libXcursor-1.1.14.tar.bz2 +0cf292de2a9fa2e9a939aefde68fd34f libXdamage-1.1.4.tar.bz2 +0920924c3a9ebc1265517bdd2f9fde50 libfontenc-1.1.3.tar.bz2 +96f76ba94b4c909230bac1e2dcd551c4 libXfont-1.5.1.tar.bz2 +331b3a2a3a1a78b5b44cfbd43f86fcfe libXft-2.3.2.tar.bz2 +9f02462855c598a0cd0ddfd98c6e2565 libXi-1.7.5.tar.bz2 +9336dc46ae3bf5f81c247f7131461efd libXinerama-1.1.3.tar.bz2 +309762867e41c6fd813da880d8a1bc93 libXrandr-1.5.0.tar.bz2 +45ef29206a6b58254c81bea28ec6c95f libXres-1.0.7.tar.bz2 +25c6b366ac3dc7a12c5d79816ce96a59 libXtst-1.2.2.tar.bz2 +e0af49d7d758b990e6fef629722d4aca libXv-1.0.10.tar.bz2 +eba6b738ed5fdcd8f4203d7c8a470c79 libXvMC-1.0.9.tar.bz2 +d7dd9b9df336b7dd4028b6b56542ff2c libXxf86dga-1.1.4.tar.bz2 +298b8fff82df17304dfdb5fe4066fe3a libXxf86vm-1.1.4.tar.bz2 +ba983eba5a9f05d152a0725b8e863151 libdmx-1.1.3.tar.bz2 +4a4cfeaf24dab1b991903455d6d7d404 libxkbfile-1.0.9.tar.bz2 +66662e76899112c0f99e22f2fc775a7e libxshmfence-1.2.tar.bz2 +EOF + + mkdir lib +} + +function check() { + grep -v '^#' ../lib-7.7.md5 | awk '{print $2}' | wget -i- -c \ + -B http://xorg.freedesktop.org/archive/individual/lib/ && + md5sum -c ../lib-7.7.md5 +} + +function build() { + for package in $(grep -v '^#' ../lib-7.7.md5 | awk '{print $2}') + do + packagedir=${package%.tar.bz2} + tar -xf $package + pushd $packagedir + case $packagedir in + libXfont-[0-9]* ) + ./configure $XORG_CONFIG --disable-devel-docs;; + + libXt-[0-9]* ) + ./configure $XORG_CONFIG \ + --with-appdefaultdir=/etc/X11/app-defaults;; + + * ) + ./configure $XORG_CONFIG;; + esac + make $MAKE_PARALLEL + make $MAKE_PARALLEL check 2>&1 | tee ../$packagedir-make_check.log + as_root make $MAKE_PARALLEL install + popd + rm -rf $packagedir + as_root /sbin/ldconfig + done +} + +prepare;pushd lib;check;build;popd diff --git a/phase4/xorg-protocol-headers/build.sh b/phase4/xorg-protocol-headers/build.sh new file mode 100755 index 0000000..4d6f6b9 --- /dev/null +++ b/phase4/xorg-protocol-headers/build.sh @@ -0,0 +1,68 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +function as_root() +{ + if [ $EUID = 0 ]; then $* + elif [ -x /usr/bin/sudo ]; then sudo $* + else su -c \\"$*\\" + fi +} + +export -f as_root + +function prepare() { + cat > proto-7.7.md5 << "EOF" +1a05fb01fa1d5198894c931cf925c025 bigreqsproto-1.1.2.tar.bz2 +98482f65ba1e74a08bf5b056a4031ef0 compositeproto-0.4.2.tar.bz2 +998e5904764b82642cc63d97b4ba9e95 damageproto-1.2.1.tar.bz2 +4ee175bbd44d05c34d43bb129be5098a dmxproto-2.3.1.tar.bz2 +b2721d5d24c04d9980a0c6540cb5396a dri2proto-2.8.tar.bz2 +a3d2cbe60a9ca1bf3aea6c93c817fee3 dri3proto-1.0.tar.bz2 +e7431ab84d37b2678af71e29355e101d fixesproto-5.0.tar.bz2 +36934d00b00555eaacde9f091f392f97 fontsproto-2.1.3.tar.bz2 +5565f1b0facf4a59c2778229c1f70d10 glproto-1.4.17.tar.bz2 +6caebead4b779ba031727f66a7ffa358 inputproto-2.3.1.tar.bz2 +94afc90c1f7bef4a27fdd59ece39c878 kbproto-1.0.7.tar.bz2 +2d569c75884455c7148d133d341e8fd6 presentproto-1.0.tar.bz2 +a46765c8dcacb7114c821baf0df1e797 randrproto-1.5.0.tar.bz2 +1b4e5dede5ea51906f1530ca1e21d216 recordproto-1.14.2.tar.bz2 +a914ccc1de66ddeb4b611c6b0686e274 renderproto-0.11.1.tar.bz2 +cfdb57dae221b71b2703f8e2980eaaf4 resourceproto-1.2.0.tar.bz2 +edd8a73775e8ece1d69515dd17767bfb scrnsaverproto-1.2.2.tar.bz2 +e658641595327d3990eab70fdb55ca8b videoproto-2.3.2.tar.bz2 +5f4847c78e41b801982c8a5e06365b24 xcmiscproto-1.2.2.tar.bz2 +70c90f313b4b0851758ef77b95019584 xextproto-7.3.0.tar.bz2 +120e226ede5a4687b25dd357cc9b8efe xf86bigfontproto-1.2.0.tar.bz2 +a036dc2fcbf052ec10621fd48b68dbb1 xf86dgaproto-2.1.tar.bz2 +1d716d0dac3b664e5ee20c69d34bc10e xf86driproto-2.1.1.tar.bz2 +e793ecefeaecfeabd1aed6a01095174e xf86vidmodeproto-2.3.1.tar.bz2 +9959fe0bfb22a0e7260433b8d199590a xineramaproto-1.2.1.tar.bz2 +3ce2f230c5d8fa929f326ad1f0fa40a8 xproto-7.0.28.tar.bz2 +EOF + + mkdir proto +} + +function check() { + grep -v '^#' ../proto-7.7.md5 | awk '{print $2}' | wget -i- -c \ + -B http://xorg.freedesktop.org/archive/individual/proto/ && + md5sum -c ../proto-7.7.md5 +} + +function build() { + for package in $(grep -v '^#' ../proto-7.7.md5 | awk '{print $2}') + do + packagedir=${package%.tar.bz2} + tar -xf $package + pushd $packagedir + ./configure $XORG_CONFIG + as_root make $MAKE_PARALLEL install + popd + rm -rf $packagedir + done +} + +prepare;pushd proto;check;build;popd diff --git a/phase4/xorg-server/build.sh b/phase4/xorg-server/build.sh new file mode 100755 index 0000000..930d949 --- /dev/null +++ b/phase4/xorg-server/build.sh @@ -0,0 +1,47 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xorg-server" +PKG_VERSION="1.17.2" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tar.bz2" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + ./configure $XORG_CONFIG \ + --enable-glamor \ + --enable-suid-wrapper \ + --with-xkb-output=/var/lib/xkb && + make $MAKE_PARALLEL +} + +function check() { + make $MAKE_PARALLEL check +} + +function instal() { + make $MAKE_PARALLEL install && + mkdir -pv /etc/X11/xorg.conf.d + + # Sometimes permissions get messed up + chmod +s /usr/bin/Xorg +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/phase4/xterm/.gitignore b/phase4/xterm/.gitignore new file mode 100644 index 0000000..13a1d51 --- /dev/null +++ b/phase4/xterm/.gitignore @@ -0,0 +1,7 @@ +*.tar.* +*.zip +*.log +*~ +*.*~ +.*~ +DONE diff --git a/phase4/xterm/build.sh b/phase4/xterm/build.sh new file mode 100755 index 0000000..bbd2314 --- /dev/null +++ b/phase4/xterm/build.sh @@ -0,0 +1,54 @@ +#!/bin/sh + +set +h # disable hashall +shopt -s -o pipefail + +PKG_NAME="xterm" +PKG_VERSION="320" + +TARBALL="${PKG_NAME}-${PKG_VERSION}.tgz" +SRC_DIR="${PKG_NAME}-${PKG_VERSION}" + +function prepare() { + if [[ ! -f "${TARBALL}" ]] + then + ln -sv "/source/$TARBALL" "$TARBALL" + fi +} + +function unpack() { + tar xf ${TARBALL} +} + +function build() { + sed -i '/v0/{n;s/new:/new:kb=^?:/}' termcap && + printf '\tkbs=\\177,\n' >> terminfo && + + TERMINFO=/usr/share/terminfo \ + ./configure $XORG_CONFIG \ + --with-app-defaults=/etc/X11/app-defaults && + make $MAKE_PARALLEL +} + +function check() { + echo " " +} + +function instal() { + make $MAKE_PARALLEL install && + make $MAKE_PARALLEL install-ti + + cat >> /etc/X11/app-defaults/XTerm << "EOF" +*VT100*locale: true +*VT100*faceName: Monospace +*VT100*faceSize: 10 +*backarrowKeyIsErase: true +*ptyInitialErase: true +EOF +} + +function clean() { + rm -rf "${SRC_DIR}" +} + +clean;prepare;unpack;pushd ${SRC_DIR};build;[[ $MAKE_CHECK = TRUE ]] && check;instal;popd;clean diff --git a/wget-list b/wget-list index 870d731..508d4d9 100644 --- a/wget-list +++ b/wget-list @@ -79,3 +79,49 @@ ftp://ftp.gnupg.org/gcrypt/libksba/libksba-1.3.3.tar.bz2 ftp://ftp.gnupg.org/gcrypt/libassuan/libassuan-2.2.1.tar.bz2 ftp://ftp.gnupg.org/gcrypt/pinentry/pinentry-0.9.5.tar.bz2 ftp://ftp.gnupg.org/gcrypt/npth/npth-1.2.tar.bz2 +ftp://ftp.x.org/pub/individual/util/util-macros-1.19.0.tar.bz2 +ftp://ftp.x.org/pub/individual/lib/libXau-1.0.8.tar.bz2 +ftp://ftp.x.org/pub/individual/lib/libXdmcp-1.1.2.tar.bz2 +http://xcb.freedesktop.org/dist/xcb-proto-1.11.tar.bz2 +https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tar.xz +https://docs.python.org/3/archives/python-3.5.0-docs-html.tar.bz2 +https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tar.xz +https://docs.python.org/2.7/archives/python-2.7.10-docs-html.tar.bz2 +ftp://sourceware.org/pub/libffi/libffi-3.2.1.tar.gz +ftp://ftp.gnu.org/pub/gnu/dejagnu/dejagnu-1.5.3.tar.gz +http://prdownloads.sourceforge.net/expect/expect5.45.tar.gz +http://downloads.sourceforge.net/tcl/tcl8.6.4-src.tar.gz +http://downloads.sourceforge.net/tcl/tcl8.6.4-html.tar.gz +ftp://xmlsoft.org/libxml2/libxml2-2.9.2.tar.gz +http://www.w3.org/XML/Test/xmlts20130923.tar.gz +http://xcb.freedesktop.org/dist/libxcb-1.11.1.tar.bz2 +http://downloads.sourceforge.net/check/check-0.10.0.tar.gz +http://downloads.sourceforge.net/freetype/freetype-2.6.1.tar.bz2 +http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-1.1.0.tar.bz2 +http://www.freedesktop.org/software/fontconfig/release/fontconfig-2.11.1.tar.bz2 +http://xcb.freedesktop.org/dist/xcb-util-0.4.0.tar.bz2 +http://xcb.freedesktop.org/dist/xcb-util-image-0.4.0.tar.bz2 +http://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.0.tar.bz2 +http://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.9.tar.bz2 +http://xcb.freedesktop.org/dist/xcb-util-wm-0.4.1.tar.bz2 +ftp://ftp.freedesktop.org/pub/mesa/11.0.2/mesa-11.0.2.tar.bz2 +http://dri.freedesktop.org/libdrm/libdrm-2.4.65.tar.bz2 +https://fedorahosted.org/releases/e/l/elfutils/0.164/elfutils-0.164.tar.bz2 +http://llvm.org/releases/3.7.0/llvm-3.7.0.src.tar.xz +ftp://ftp.x.org/pub/individual/data/xbitmaps-1.1.1.tar.bz2 +http://downloads.sourceforge.net/libpng/libpng-1.6.19.tar.xz +ftp://ftp.x.org/pub/individual/data/xcursor-themes-1.0.4.tar.bz2 +ftp://ftp.x.org/pub/individual/data/xkeyboard-config/xkeyboard-config-2.15.tar.bz2 +ftp://ftp.x.org/pub/individual/xserver/xorg-server-1.17.2.tar.bz2 +ftp://ftp.x.org/pub/individual/lib/libpciaccess-0.13.4.tar.bz2 +http://cairographics.org/releases/pixman-0.32.8.tar.gz +https://github.com/anholt/libepoxy/releases/download/v1.3.1/libepoxy-1.3.1.tar.bz2 +http://linux-pam.org/library/Linux-PAM-1.2.1.tar.bz2 +http://www.freedesktop.org/software/systemd/systemd-224.tar.xz +ftp://ftp.x.org/pub/individual/driver/xf86-input-evdev-2.9.2.tar.bz2 +http://www.freedesktop.org/software/libevdev/libevdev-1.4.4.tar.xz +ftp://ftp.x.org/pub/individual/driver/xf86-video-ati-7.5.0.tar.bz2 +ftp://ftp.x.org/pub/individual/driver/xf86-video-intel-2.99.917.tar.bz2 +ftp://ftp.x.org/pub/individual/app/twm-1.0.9.tar.bz2 +ftp://invisible-island.net/xterm/xterm-320.tgz +ftp://ftp.x.org/pub/individual/app/xinit-1.3.4.tar.bz2