diff options
author | Britney Fransen <brfransen@gmail.com> | 2017-01-20 16:53:38 (GMT) |
---|---|---|
committer | Britney Fransen <brfransen@gmail.com> | 2017-01-20 16:53:38 (GMT) |
commit | 6d8692bba331b7a24205e4f9bb1b91dfa6d4d6d4 (patch) | |
tree | 443e6b7f12822b8a0a3fdb5a290757a817e7eb5b /abs/core | |
parent | 95d651edb72e7b278c9ba02e9afa64eb6a0d911e (diff) | |
parent | d0b37ccccc013118824437c8afdf3c48dd4d6530 (diff) | |
download | linhes_pkgbuild-6d8692bba331b7a24205e4f9bb1b91dfa6d4d6d4.zip linhes_pkgbuild-6d8692bba331b7a24205e4f9bb1b91dfa6d4d6d4.tar.gz linhes_pkgbuild-6d8692bba331b7a24205e4f9bb1b91dfa6d4d6d4.tar.bz2 |
Merge branch 'testing'
Diffstat (limited to 'abs/core')
84 files changed, 3546 insertions, 1048 deletions
diff --git a/abs/core/LinHES-config/PKGBUILD b/abs/core/LinHES-config/PKGBUILD index ed6cca9..f67f84d 100755 --- a/abs/core/LinHES-config/PKGBUILD +++ b/abs/core/LinHES-config/PKGBUILD @@ -1,6 +1,6 @@ pkgname=LinHES-config pkgver=8.4.2 -pkgrel=1 +pkgrel=5 conflicts=(MythVantage-config MythVantage-config-dev LinHES-config-dev LinHes-config ) pkgdesc="Install and configure your system" depends=('bc' 'libstatgrab' 'mysql-python' 'expect' 'curl' 'dnsutils' 'parted' @@ -48,6 +48,7 @@ source=(mv_install.py 09_mythvantge_runit_grub mv_fileshare.py mv_locale.py systemconfig.py + systemd-coredump.conf pinkNoise_3s.wav myth_user_call.py mythvantage.cfg @@ -132,6 +133,9 @@ package() { #sysctrl conf install -o root -g root -D -m 0755 hdhr.conf $pkgdir/etc/sysctl.d/hdhr.conf + #systemd conf + install -o root -g root -D -m 0755 systemd-coredump.conf $pkgdir/etc/systemd/coredump.conf.d/coredump.conf + #modules blacklist files install -o root -g root -D -m 0755 blacklist_pcspkr.conf $pkgdir/etc/modprobe.d/blacklist_pcspkr.conf install -o root -g root -D -m 0755 blacklist_nouveau.conf $pkgdir/etc/modprobe.d/blacklist_nouveau.conf @@ -148,7 +152,7 @@ md5sums=('97b810ddc35d1f441dbe8cdd6886e2af' '27e4fcacca9b9662dd782fbdc92fceea' '2a7f3b34e522acfd08283b86c8926aba' 'b596d2e3779a434435bc0f0277b1ba3e' - 'a751a88268029989f0067e2c9e75bf6e' + 'f0fb2ec7bcfa827686f590db8890d87a' 'f0376c98a7986897406d393186c0365e' '157e73d0f90d7b306aba8f5921aeedd3' '1f58c0393a131f4a8f9a84b3fe08a7e4' @@ -166,7 +170,7 @@ md5sums=('97b810ddc35d1f441dbe8cdd6886e2af' 'b845de3e05c1734cce4b9ac5e8f1baaf' '02b4378b17bca6bebdcc2258a80dfc6b' '8b7dce4a3a0a281fa6656aa8781a648e' - '4b10fff21a0274f950f97f2b61e92463' + '3ef3f589f46d0b59603226fef325e611' '824e49d9b01fed295c704ab68908b464' 'fe5e31b833cc6707209e9d656b6eb53c' '336f08aed2e3c0b9fd09563933d54735' @@ -177,6 +181,7 @@ md5sums=('97b810ddc35d1f441dbe8cdd6886e2af' '3cb673adb83b6afa52cffaa621b9d96b' '781f161a79c3188a31c8615b8258b241' '888a6c57f272d9fa3e77e216a421562b' + '6cb0aac63623a44463c4209862d2baa0' 'cdd5008ee77e67c1d51ad73a24612485' '2596460462cf6c889cf8f95485537b20' 'dc3c5270691a62600475705f4cb78b56' @@ -186,5 +191,5 @@ md5sums=('97b810ddc35d1f441dbe8cdd6886e2af' '3866086e6af5e3528a66eff492f2f4dd' 'c9279fa095af624ee3d9bc75d3328360' '02cf69074d2bbacef05fa3e451af9af3' - '10354854c29d894d3598639eaa1df72c' + '18a47236637c364af27c14ac0aafc801' '7acbd2064db905e76372a0618b24a6d9') diff --git a/abs/core/LinHES-config/mv_network.py b/abs/core/LinHES-config/mv_network.py index a4ad0c9..559a226 100755 --- a/abs/core/LinHES-config/mv_network.py +++ b/abs/core/LinHES-config/mv_network.py @@ -53,17 +53,23 @@ def get_ip(ifname): logging.debug(" Found %s in all_interfaces", ifname) else: logging.critical("* Couldn't find %s in list", ifname) - ifname = all_if[0] + try: + ifname = all_if[0] + except: + ifname = ifname logging.critical("* Using %s for interface name", ifname) s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) - ip = socket.inet_ntoa(fcntl.ioctl( - s.fileno(), - 0x8915, # SIOCGIFADDR - struct.pack('256s', ifname[:15]) - )[20:24]) + try: + ip = socket.inet_ntoa(fcntl.ioctl( + s.fileno(), + 0x8915, # SIOCGIFADDR + struct.pack('256s', ifname[:15]) + )[20:24]) + except: + ip = "127.0.0.1" logging.debug(" get_ip ip address is %s", ip) return ip diff --git a/abs/core/LinHES-config/plymouth_config.py b/abs/core/LinHES-config/plymouth_config.py index bb60722..a3ade2b 100755 --- a/abs/core/LinHES-config/plymouth_config.py +++ b/abs/core/LinHES-config/plymouth_config.py @@ -120,14 +120,16 @@ class plymouth_driver(): add_modules = ['i915'] remove_hooks = ['v86d'] else: - #add_modules = ['nfs','jm'] - remove_modules = ['i915'] - add_hooks = ['v86d'] + #add_modules = ['nfs','jm'] + remove_modules = ['i915'] + #remove and add to ensure v86d is first + remove_hooks = ['v86d','plymouth'] + add_hooks = ['v86d','plymouth'] - new_hooks = self.add_hooks(add_hooks , new_hooks) new_hooks = self.remove_hooks(remove_hooks, new_hooks) - new_modules = self.add_modules(add_modules, new_modules) + new_hooks = self.add_hooks(add_hooks , new_hooks) new_modules = self.remove_modules(remove_modules, new_modules) + new_modules = self.add_modules(add_modules, new_modules) self.new_hooks = new_hooks self.new_modules = new_modules @@ -156,7 +158,6 @@ class plymouth_driver(): if line.startswith('MODULES='): new_line = 'MODULES="%s"'%(" ".join(self.new_modules)) f.write(new_line) - f.write("\n") f.close() except: print " plymouth_config: couldn't write %s" %conf_file diff --git a/abs/core/LinHES-config/systemd-coredump.conf b/abs/core/LinHES-config/systemd-coredump.conf new file mode 100755 index 0000000..519f838 --- /dev/null +++ b/abs/core/LinHES-config/systemd-coredump.conf @@ -0,0 +1,2 @@ +[Coredump] +Storage=none diff --git a/abs/core/LinHES-config/xconfig.sh b/abs/core/LinHES-config/xconfig.sh index b5693b9..be01857 100755 --- a/abs/core/LinHES-config/xconfig.sh +++ b/abs/core/LinHES-config/xconfig.sh @@ -1,9 +1,18 @@ #!/bin/bash #set -x #SET DISPLAYRES to force Xres, ENV takes precendent over cmdline - +#SET VGACARDTYPE to force card type: + #VGACARDTYPE="intel" xconfig.sh + #VGACARDTYPE="nvidia" xconfig.sh + #VGACARDTYPE="nvidia-340xx" xconfig.sh + #VGACARDTYPE="nvidia-304xx" xconfig.sh + #VGACARDTYPE="VMware" xconfig.sh + #VGACARDTYPE="vesa" xconfig.sh LOGFILE=/tmp/xconfig.log +echo -e "\n\n--------------------------------------------------------------------------------" >> $LOGFILE 2>&1 +echo -e `date`"\n" >> $LOGFILE 2>&1 + for i in ati intel mga savage sis unichrome do templist=`echo $i-dri xf86-video-$i` @@ -17,6 +26,8 @@ MYTH_RUN_STATUS="1" NVIDIA_304xx="$TEMPLATES/xorg/304xx_supported.txt" NVIDIA_340xx="$TEMPLATES/xorg/340xx_supported.txt" NVIDIA_SUPPORTED="$TEMPLATES/xorg/nvidia_supported.txt" +NVIDIA_DISABLE_MSI="$TEMPLATES/xorg/nvidia_disable_msi.txt" +NVIDIA_MSI_MODPROBE="$BASE/etc/modprobe.d/nvidia_msi.conf" . /usr/MythVantage/bin/install_functions.sh home_check @@ -26,11 +37,11 @@ function Xvalues { VGAFORCED=0 if [ "x$VGACARDTYPE" = "x" ] then - CMDLINE=$(cat /proc/cmdline) + CMDLINE=$(cat /proc/cmdline) echo "$CMDLINE" | grep -q forceXvesa if [ $? = 0 ] then - echo "Forcing driver to vesa" + echo "Forcing driver to vesa from kernel cmdline" | tee -a $LOGFILE VGACARDTYPE=vesa Xcardtype=$VGACARDTYPE else @@ -38,10 +49,10 @@ function Xvalues { VGAPCIID=`lspci | grep -i vga |grep -vi non-vga| sort -r | head -n 1 | cut -d" " -f1` CARDID=`lspci -n | grep "$VGAPCIID" | grep 10de | cut -d" " -f3 | cut -d: -f2` VENDORID=`lspci -n | grep "$VGAPCIID" | grep 10de | cut -d" " -f3 | cut -d: -f1` - echo "Detected $VGACARDTYPE as the video card type" + echo "Detected $VGACARDTYPE as the video card type" | tee -a $LOGFILE fi else - echo "Video card type forced to $VGACARDTYPE" + echo "Video card type forced to $VGACARDTYPE" | tee -a $LOGFILE VGAFORCED=1 CARDID="NOT_DETECTED" fi @@ -49,14 +60,14 @@ function Xvalues { } function presetupX { - if [ "$XIgnoreConfig" = 1 ] + if [ "$XIgnoreConfig" = 1 ] then - echo "Using User Supplied X" + echo "Using User Supplied X" | tee -a $LOGFILE if [ -f "$MYTHHOME/templates/xorg.user" ] then cp -f "$MYTHHOME/templates/xorg.user" "$XORG_CONF" else - echo "Didn't find the file" + echo "Didn't find the file" | tee -a $LOGFILE echo "Copy your config file to $MYTHHOME/templates/xorg.user" > "$XORG_CONF" fi else @@ -65,6 +76,7 @@ function presetupX { } function nvidia_prepare { + [[ -f "$NVIDIA_MSI_MODPROBE" ]] && rm -f "$NVIDIA_MSI_MODPROBE" for i in libva-intel-driver mesa-libgl nvidia nvidia-utils nvidia-libgl opencl-nvidia nvidia-settings libglvnd nvidia-304xx nvidia-304xx-utils nvidia-304xx-libgl opencl-nvidia-304xx nvidia-340xx nvidia-340xx-utils nvidia-340xx-libgl opencl-nvidia-340xx do pacman --noconfirm -Rdd $i >> $LOGFILE 2>&1 @@ -77,13 +89,12 @@ function nvidia_prepare { } function pkg_check () { - echo " Checking for $1 in cache or online" + echo " Checking for $1 in cache or online" | tee -a $LOGFILE pacman --noconfirm -Sw $1 >> $LOGFILE 2>&1 rc=$? if [ $rc != 0 ] then - echo " Couldn't find $1 for install, aborting" - echo " Couldn't find $1 for install, aborting" >> $LOGFILE 2>&1 + echo " Couldn't find $1 for install, aborting" | tee -a $LOGFILE exit 1 fi } @@ -93,22 +104,21 @@ function nvidia_driver_install { INSTALLED=0 - grep -qi "$CARDID" "$NVIDIA_SUPPORTED" + CARDNAME=`grep -i "$CARDID" "$NVIDIA_SUPPORTED"` if [[ $? = 0 || $VGAFORCED -eq 1 && $VGACARDTYPE == "nvidia" ]] then + echo "$CARDNAME" | tee -a $LOGFILE LIST="nvidia nvidia-libgl nvidia-utils opencl-nvidia nvidia-settings" for i in `echo ${LIST}` do pkg_check $i done - echo "Installing current nvidia driver" - echo "Installing current nvidia driver" >> $LOGFILE 2>&1 + echo "Installing current nvidia driver" | tee -a $LOGFILE nvidia_prepare pacman --noconfirm -S ${LIST} >> $LOGFILE 2>&1 if [[ $? != 0 ]] then - echo "ERROR: Unable to install current nvidia driver" - echo "ERROR: Unable to install current nvidia driver" >> $LOGFILE 2>&1 + echo "ERROR: Unable to install current nvidia driver" | tee -a $LOGFILE else INSTALLED=1 fi @@ -116,22 +126,21 @@ function nvidia_driver_install { if [ $INSTALLED -eq 0 ] then - grep -qi "$CARDID" "$NVIDIA_340xx" + CARDNAME=`grep -i "$CARDID" "$NVIDIA_340xx"` if [[ $? = 0 || $VGAFORCED -eq 1 && $VGACARDTYPE == "nvidia-340xx" ]] then + echo "$CARDNAME" | tee -a $LOGFILE LIST="nvidia-340xx nvidia-340xx-libgl nvidia-340xx-utils opencl-nvidia-340xx" for i in `echo ${LIST}` do pkg_check $i done - echo "Installing nvidia-340xx driver" - echo "Installing nvidia-340xx driver" >> $LOGFILE 2>&1 + echo "Installing nvidia-340xx driver" | tee -a $LOGFILE nvidia_prepare pacman --noconfirm -S ${LIST} >> $LOGFILE 2>&1 if [[ $? != 0 ]] then - echo "ERROR: Unable to install nvidia-340xx driver" - echo "ERROR: Unable to install nvidia-340xx driver" >> $LOGFILE 2>&1 + echo "ERROR: Unable to install nvidia-340xx driver" | tee -a $LOGFILE else INSTALLED=1 fi @@ -140,22 +149,21 @@ function nvidia_driver_install { if [ $INSTALLED -eq 0 ] then - grep -qi "$CARDID" "$NVIDIA_304xx" + CARDNAME=`grep -i "$CARDID" "$NVIDIA_304xx"` if [[ $? = 0 || $VGAFORCED -eq 1 && $VGACARDTYPE == "nvidia-304xx" ]] then + echo "$CARDNAME" | tee -a $LOGFILE LIST="nvidia-304xx nvidia-304xx-libgl nvidia-304xx-utils opencl-nvidia-304xx" for i in `echo ${LIST}` do pkg_check $i done - echo "Installing nvidia-304xx driver" - echo "Installing nvidia-304xx driver" >> $LOGFILE 2>&1 + echo "Installing nvidia-304xx driver" | tee -a $LOGFILE nvidia_prepare pacman --noconfirm -S ${LIST} >> $LOGFILE 2>&1 if [[ $? != 0 ]] then - echo "ERROR: Unable to install nvidia-304xx driver" - echo "ERROR: Unable to install nvidia-304xx driver" >> $LOGFILE 2>&1 + echo "ERROR: Unable to install nvidia-304xx driver" | tee -a $LOGFILE else INSTALLED=1 fi @@ -165,27 +173,34 @@ function nvidia_driver_install { if [ $INSTALLED -eq 0 ] then #this is a failsafe, can't find the right driver, then use the latest' - echo " Couldn't find the card id in any list" - echo " Couldn't find the card id in any list" >> $LOGFILE 2>&1 + echo " Couldn't find the card id in any list" | tee -a $LOGFILE LIST="nvidia nvidia-libgl nvidia-utils opencl-nvidia nvidia-settings" for i in `echo ${LIST}` do pkg_check $i done - echo "Installing current nvidia driver" - echo "Installing current nvidia driver" >> $LOGFILE 2>&1 + echo "Installing current nvidia driver" | tee -a $LOGFILE nvidia_prepare pacman --noconfirm -S ${LIST} >> $LOGFILE 2>&1 if [[ $? != 0 ]] then - echo "ERROR: Unable to install current nvidia driver" - echo "ERROR: Unable to install current nvidia driver" >> $LOGFILE 2>&1 + echo "ERROR: Unable to install current nvidia driver" | tee -a $LOGFILE else INSTALLED=1 fi fi echo "/usr/lib/libXvMCNVIDIA_dynamic.so.1" > "$XVMC_CONFIG" + + if [ $INSTALLED -eq 1 ] + then + grep -qi "$CARDID" "$NVIDIA_DISABLE_MSI" + if [[ $? = 0 ]] + then + echo "Disabling MSI interrupts" | tee -a $LOGFILE + echo "options nvidia NVreg_EnableMSI=0" > "$NVIDIA_MSI_MODPROBE" + fi + fi } function vmware_driver_install { @@ -194,8 +209,7 @@ function vmware_driver_install { do pkg_check $i done - echo "Installing VMware driver" - echo "Installing VMware driver" >> $LOGFILE 2>&1 + echo "Installing VMware driver" | tee -a $LOGFILE #this is used to remove nvidia nvidia_prepare for i in `echo ${LIST}` @@ -207,8 +221,7 @@ function vmware_driver_install { function vesa_driver_install { pkg_check xf86-video-vesa pkg_check mesa-libgl - echo "Installing Vesa driver" - echo "Installing Vesa driver" >> $LOGFILE 2>&1 + echo "Installing Vesa driver" | tee -a $LOGFILE #this is used to remove nvidia nvidia_prepare pacman -S --noconfirm xf86-video-vesa mesa-libgl >> $LOGFILE 2>&1 @@ -217,8 +230,7 @@ function vesa_driver_install { function intel_driver_install { pkg_check xf86-video-intel pkg_check mesa-libgl - echo "Installing Intel driver" - echo "Installing Intel driver" >> $LOGFILE 2>&1 + echo "Installing Intel driver" | tee -a $LOGFILE #this is used to remove nvidia nvidia_prepare pacman -S --noconfirm xf86-video-intel libva-intel-driver mesa-libgl >> $LOGFILE 2>&1 @@ -226,8 +238,7 @@ function intel_driver_install { } function set_res { - echo " Setting modeline to ${Xres}" - echo " Setting modeline to ${Xres}" >> $LOGFILE 2>&1 + echo "Setting resolution to ${Xres}" | tee -a $LOGFILE cat > /etc/X11/xorg.conf.d/30-screen.conf <<EOF Section "Screen" Identifier "Screen0" #Collapse Monitor and Device section to Screen section @@ -249,15 +260,11 @@ function setupX { case $VGACARDTYPE in nvidia|nvidia-340xx|nvidia-304xx) nvidia_driver_install - if [ \"$Xres\" = "Auto" ] - then - Xres="nvidia-auto-select" - fi - - if [ ${Xres} != "Auto" ] + if [[ $Xres != "Auto" ]] then set_res else + echo "Setting resolution to ${Xres}" | tee -a $LOGFILE rm -f /etc/X11/xorg.conf.d/30-screen.conf fi ;; @@ -270,10 +277,11 @@ function setupX { echo "#!/bin/bash" > /etc/X11/autostart/vmware.sh echo "/usr/bin/vmware-user-suid-wrapper" >> /etc/X11/autostart/vmware.sh chmod 755 /etc/X11/autostart/vmware.sh - if [ ${Xres} != "Auto" ] + if [[ $Xres != "Auto" ]] then set_res else + echo "Setting resolution to ${Xres}" | tee -a $LOGFILE rm -f /etc/X11/xorg.conf.d/30-screen.conf fi ;; @@ -281,25 +289,27 @@ function setupX { intel) intel_driver_install cp $TEMPLATES/xorg/xorg.intel /etc/X11/xorg.conf.d/20-automv.conf - if [ ${Xres} != "Auto" ] + if [[ $Xres != "Auto" ]] then set_res else + echo "Setting resolution to ${Xres}" | tee -a $LOGFILE rm -f /etc/X11/xorg.conf.d/30-screen.conf fi ;; vesa|innotek|*) #leaving this as * and vesa for no real reason other then it's explicit to catch vesa - if [[ $VGACARDTYPE != "vesa" && $VGACARDTYPE != "innotek" ]] - then - echo "Unknown card type, using Vesa." - fi - vesa_driver_install - cp $TEMPLATES/xorg/xorg.vesa /etc/X11/xorg.conf.d/20-automv.conf - if [ ${Xres} != "Auto" ] + if [[ $VGACARDTYPE != "vesa" && $VGACARDTYPE != "innotek" ]] + then + echo "Unknown card type, using Vesa." | tee -a $LOGFILE + fi + vesa_driver_install + cp $TEMPLATES/xorg/xorg.vesa /etc/X11/xorg.conf.d/20-automv.conf + if [[ $Xres != "Auto" ]] then set_res else + echo "Setting resolution to ${Xres}" | tee -a $LOGFILE rm -f /etc/X11/xorg.conf.d/30-screen.conf fi @@ -309,7 +319,7 @@ function setupX { #configure the ramdisk for kms if [ x$RUNP != "x1" ] then - echo "Running plymouth_config" + echo "Running plymouth_config" | tee -a $LOGFILE plymouth_config.py >> $LOGFILE 2>&1 fi fi @@ -319,8 +329,8 @@ function setupX { function pacman_wait { if [ -f /var/lib/pacman/db.lck ] then - echo "Pacman is running and must quit before xconfig.sh can continue." - echo " Waiting for pacman to quit..." + echo "Pacman is running and must quit before xconfig.sh can continue." | tee -a $LOGFILE + echo " Waiting for pacman to quit..." | tee -a $LOGFILE while [ -f /var/lib/pacman/db.lck ] do sleep 5 @@ -333,28 +343,25 @@ function pacman_wait { LINE=`grep -i xorg /etc/mythvantage.cfg|grep -q False` rc=$? -if [ $rc = 0 ] +if [ $rc = 0 ] then - echo "** xorg configuration disabled in /etc/mythvantage.cfg" + echo "** xorg configuration disabled in /etc/mythvantage.cfg" | tee -a $LOGFILE exit 1 fi if [ -f /etc/sysconfig/IGNORE_X ] then - echo "** Will not run xconfig.sh due to presence of /etc/sysconfig/IGNORE_X" + echo "** Will not run xconfig.sh due to presence of /etc/sysconfig/IGNORE_X" | tee -a $LOGFILE exit 1 fi - if [ -f /etc/systemconfig ] then . /etc/systemconfig else - #Xres="800x600" - Xres="Auto" - echo " Setting modeline to ${Xres}" - echo " Setting modeline to ${Xres}" >> $LOGFILE 2>&1 + echo " systemconfig not found." | tee -a $LOGFILE fi + CMDLINE=$(cat /proc/cmdline) echo $CMDLINE | grep -q displayres if [ $? = 0 ] @@ -365,10 +372,17 @@ fi if [ ! x$DSR = x ] then Xres=$DSR + echo " Setting resolution to ${Xres} from kernel cmdline" | tee -a $LOGFILE fi if [ ! x$DISPLAYRES = x ] then Xres=$DISPLAYRES + echo "Resolution forced to ${Xres}" | tee -a $LOGFILE +fi +if [ x$Xres = x ] +then + Xres="Auto" + echo "Resolution not set. Setting to ${Xres}" | tee -a $LOGFILE fi diff --git a/abs/core/LinHES-system/PKGBUILD b/abs/core/LinHES-system/PKGBUILD index 7a02894..9cc6e8b 100755 --- a/abs/core/LinHES-system/PKGBUILD +++ b/abs/core/LinHES-system/PKGBUILD @@ -1,6 +1,6 @@ pkgname=LinHES-system pkgver=8.4 -pkgrel=16 +pkgrel=17 arch=('i686' 'x86_64') install=system.install pkgdesc="Everything that makes LinHES an automated system" @@ -125,7 +125,7 @@ md5sums=('c6e6b83a1f4c35ef4501e277657ab2ac' 'bacc813b48bafcc6fe906e5969930501' 'dedd3fcb1abec6361f4060d8149c7d6d' '8b0298f70f97cc1dc2a58b9a73c64bd3' - 'b4bb70650893c811c854d446cfa6ca6a' + '85558db5864bc70676ef46acc4595f88' 'e30bf8ec8b9dcc2ceb7127375a91d8d1' 'e9f545c3bcf9c85b45496c281fc6a1b8' 'a94fe6d980f4b810f2e2ae5352084b39' diff --git a/abs/core/LinHES-system/checkXFSfrag.sh b/abs/core/LinHES-system/checkXFSfrag.sh index 709cdac..5fccece 100755 --- a/abs/core/LinHES-system/checkXFSfrag.sh +++ b/abs/core/LinHES-system/checkXFSfrag.sh @@ -42,11 +42,11 @@ do isSATA=`cat /sys/block/${device}/queue/rotational` if [[ $isSATA -eq 1 ]] then - percentage=`$xfsdb -c frag -r ${i}|cut -f 7 --delim=" "` + percentage=`$xfsdb -c frag -r ${i}|grep factor|cut -f 7 --delim=" "` percent2=`$e $percentage|cut -f 1 --delim=.` if [ "$percent2" -gt "$pctmax" ] then - $e "${i} is $percentage% fragmented. Running defragment on ${i}." + $e "${i} is $percentage fragmented. Running defragment on ${i}." # Only uncomment one of the following two lines. #$xfsfsr -v ${i} # Uncomment for verbose defrag. $ionice -c3 $xfsfsr ${i} # Uncomment for quiet defrag. diff --git a/abs/core/alsa-lib/PKGBUILD b/abs/core/alsa-lib/PKGBUILD index af325f4..24f8aaa 100644 --- a/abs/core/alsa-lib/PKGBUILD +++ b/abs/core/alsa-lib/PKGBUILD @@ -2,7 +2,7 @@ # Maintainer: judd <jvinet@zeroflux.org> pkgname=alsa-lib -pkgver=1.1.1 +pkgver=1.1.2 pkgrel=1 pkgdesc="An alternative implementation of Linux sound support" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ optdepends=('python2: for python smixer plugin') makedepends=('python2') license=('GPL') source=(ftp://ftp.alsa-project.org/pub/lib/$pkgname-$pkgver.tar.bz2) -sha1sums=('09f7e9b2d88287e04a4bb0d56e0cbc9018e524ec') +sha1sums=('574a0ebd4d218c81f73a0abae79f0e3cc9a6e402') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/abs/core/alsa-utils/PKGBUILD b/abs/core/alsa-utils/PKGBUILD index d12067b..1e450d0 100644 --- a/abs/core/alsa-utils/PKGBUILD +++ b/abs/core/alsa-utils/PKGBUILD @@ -3,7 +3,7 @@ # Contributor: judd <jvinet@zeroflux.org> pkgname=alsa-utils -pkgver=1.1.1 +pkgver=1.1.2 pkgrel=1 pkgdesc="An alternative implementation of Linux sound support" arch=('i686' 'x86_64') @@ -38,5 +38,5 @@ package() { # dir where to save ALSA state install -d ${pkgdir}/var/lib/alsa } -md5sums=('f8d00ad5fba757b4c3735d066cc288e2' +md5sums=('38ac7c781f80c41c02b4664d8cbafa87' '529216f6a46e61a546640e08ea7a0879') diff --git a/abs/core/ceton_infinitv/PKGBUILD b/abs/core/ceton_infinitv/PKGBUILD index 839883c..2caaa68 100755 --- a/abs/core/ceton_infinitv/PKGBUILD +++ b/abs/core/ceton_infinitv/PKGBUILD @@ -2,10 +2,10 @@ pkgname=ceton_infinitv #_kernver=`uname -r` -_kernver=4.4.26-1-ARCH +_kernver=4.4.39-1-ARCH _extramods="extramodules-4.4-ARCH" pkgver=2013.0326.2226 -pkgrel=17 +pkgrel=18 usb_pkgver=0.1.0 pci_pkgver=`echo $pkgver | tr . _` pkgdesc="Drivers for Ceton InfiniTV4 - pci/usb " diff --git a/abs/core/less/PKGBUILD b/abs/core/less/PKGBUILD index 5a5c2a4..c833986 100644 --- a/abs/core/less/PKGBUILD +++ b/abs/core/less/PKGBUILD @@ -4,8 +4,8 @@ # Contributor: judd <jvinet@zeroflux.org> pkgname=less -pkgver=481 -pkgrel=2 +pkgver=487 +pkgrel=1 pkgdesc='A terminal based program for viewing text files' license=('GPL3') arch=('i686' 'x86_64') @@ -14,7 +14,7 @@ groups=('base') depends=('glibc' 'ncurses' 'pcre') validpgpkeys=('AE27252BD6846E7D6EAE1DD6F153A7C833235259') # Mark Nudelman source=("http://www.greenwoodsoftware.com/$pkgname/$pkgname-$pkgver.tar.gz"{,.sig}) -md5sums=('50ef46065c65257141a7340123527767' +md5sums=('dcc8bf183a83b362d37fe9ef8df1fb60' 'SKIP') build() { diff --git a/abs/core/lighttpd/PKGBUILD b/abs/core/lighttpd/PKGBUILD index d389ecd..d7405ab 100644 --- a/abs/core/lighttpd/PKGBUILD +++ b/abs/core/lighttpd/PKGBUILD @@ -2,7 +2,7 @@ # Maintainer: Pierre Schmitz <pierre@archlinux.de> pkgname=lighttpd -pkgver=1.4.39 +pkgver=1.4.45 pkgrel=1 pkgdesc='A secure, fast, compliant and very flexible web-server' license=('custom') @@ -15,8 +15,8 @@ optdepends=('libxml2: mod_webdav' \ 'libmysqlclient: mod_mysql_vhost' \ 'sqlite3: mod_webdav' \ 'gdbm: mod_trigger_b4_dl') -backup=('etc/lighttpd/lighttpd.conf' 'etc/logrotate.d/lighttpd' 'etc/lighttpd/auth-inc.conf' 'etc/lighttpd/conf.include' 'etc/lighttpd/html.include') -options=('!libtool' 'emptydirs') +backup=('etc/lighttpd/auth-inc.conf' 'etc/lighttpd/conf.include' 'etc/lighttpd/html.include') +options=('emptydirs') source=("http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${pkgver}.tar.gz" 'lighttpd.logrotate.d' 'lighttpd.conf' 'auth-inc.conf' 'ssl-inc.conf' 'lighttpd.tmpfiles') @@ -58,28 +58,13 @@ package() { install -D -m644 ${srcdir}/ssl-inc.conf ${pkgdir}/etc/lighttpd/ssl-inc.conf install -D -m644 ${srcdir}/lighttpd.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/lighttpd.conf - # set sane defaults - sed -e 's|/srv/www/htdocs/|/srv/http/|' \ - -e 's|/srv/www/|/srv/http/|' \ - -e 's|#server.username = "wwwrun"|server.username = "http"|' \ - -e 's|#server.groupname = "wwwrun"|server.groupname = "http"|' \ - -e 's|#server.pid-file = "/run/lighttpd.pid"|server.pid-file = "/run/lighttpd/lighttpd.pid"|' \ - -e 's|/usr/local/bin/php-cgi|/usr/bin/php-cgi|' \ - -e 's|"^/mythweb|"^/{1,2}mythweb|' \ - -e 's|# "mod_proxy",| "mod_proxy",|' \ - -e 's|# "mod_ssi",| "mod_ssi",|' \ - -e 's|#ssi.extension = ( ".shtml" )|ssi.extension = ( ".shtml" )|' \ - -i ${pkgdir}/etc/lighttpd/lighttpd.conf || return 1 - - /usr/bin/touch ${pkgdir}/etc/lighttpd/{conf,html}.include || return 1 - /bin/echo 'include "/etc/lighttpd/conf.include"' >> ${pkgdir}/etc/lighttpd/lighttpd.conf || return 1 - /bin/echo 'include "/etc/lighttpd/html.include"' >> ${pkgdir}/etc/lighttpd/lighttpd.conf || return 1 + /usr/bin/touch ${pkgdir}/etc/lighttpd/{conf,html}.include || return 1 install -D -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING } -md5sums=('b49e133a4b321921331eba5a343872ab' +md5sums=('98b97852441fc6b1942dfa9cf5c0beba' '42d106b101d21ffd76ed9f3f1621e164' - '7945bd60801295010e9e2cac1dba78b7' + '1ff60252037689b0419e4c11af34b1ef' '62779511e3f1127c3cc9b94c49f99c29' 'ef64c496602b182a551416a8ba6b3d43' '1aeda5526e2cf1ca99d6e1571a6d9cf5') diff --git a/abs/core/lighttpd/lighttpd.conf b/abs/core/lighttpd/lighttpd.conf index 0d8becd..4d84dba 100644 --- a/abs/core/lighttpd/lighttpd.conf +++ b/abs/core/lighttpd/lighttpd.conf @@ -1,10 +1,8 @@ +####################################################################### # lighttpd configuration file # -# use it as a base for lighttpd 1.0.0 and above -# -# $Id: lighttpd.conf,v 1.7 2004/11/03 22:26:05 weigon Exp $ - -############ Options you really have to take care of #################### +# /etc/lighttpd/lighttpd.conf +####################################################################### ## modules to load # at least mod_access and mod_accesslog should be loaded @@ -28,7 +26,7 @@ server.modules = ( # "mod_userdir", "mod_cgi", # "mod_compress", -# "mod_ssi", + "mod_ssi", # "mod_usertrack", # "mod_expire", # "mod_secdownload", @@ -242,10 +240,11 @@ fastcgi.server = ( #### CGI module cgi.assign = ( ".pl" => "/usr/bin/perl", ".cgi" => "/usr/bin/perl", - ".sh" => "/bin/bash", + ".sh" => "/usr/bin/bash", ".py" => "/usr/bin/python2") -alias.url = ( "/unicorn" => "/data/srv/httpd/supercorn" ) + alias.url += ( "/cgi-bin" => "/data/srv/httpd/cgi-bin/") + $HTTP["url"] =~ "^/cgi-bin" { cgi.assign = ( "" => "" ) } @@ -267,3 +266,6 @@ $HTTP["url"] =~ "^/cgi-bin" { #include_shell "echo var.a=1" ## the above is same as: #var.a=1 + +include "/etc/lighttpd/conf.include" +include "/etc/lighttpd/html.include" diff --git a/abs/core/lighttpd/lighttpd.install b/abs/core/lighttpd/lighttpd.install index 1b0a4d7..3526b71 100755 --- a/abs/core/lighttpd/lighttpd.install +++ b/abs/core/lighttpd/lighttpd.install @@ -2,7 +2,11 @@ post_install() { if [[ ! -d run/lighttpd ]]; then usr/bin/systemd-tmpfiles --create lighttpd.conf fi + + echo "Generate lighttpd include..." gen_light_include.py + echo "Forcing a re-read of lighttpd's configuration file..." + /sbin/sv hup /service/lighttpd } post_upgrade() { diff --git a/abs/core/linhes-theme/LHLogo.png b/abs/core/linhes-theme/LHLogo.png Binary files differindex 9ff4fd2..9ff4fd2 100755..100644 --- a/abs/core/linhes-theme/LHLogo.png +++ b/abs/core/linhes-theme/LHLogo.png diff --git a/abs/core/linhes-theme/LHLogoAndText.png b/abs/core/linhes-theme/LHLogoAndText.png Binary files differindex 39504e7..39504e7 100755..100644 --- a/abs/core/linhes-theme/LHLogoAndText.png +++ b/abs/core/linhes-theme/LHLogoAndText.png diff --git a/abs/core/linhes-theme/PKGBUILD b/abs/core/linhes-theme/PKGBUILD index b30b086..5bbe836 100755 --- a/abs/core/linhes-theme/PKGBUILD +++ b/abs/core/linhes-theme/PKGBUILD @@ -1,21 +1,23 @@ pkgname=linhes-theme pkgver=8.4 -pkgrel=13 +pkgrel=20 pkgdesc="Default LinHES MythTV theme" arch=('i686' 'x86_64') license=('GPL2') url="http://linhes.org/" patches=('readme.txt.patch' 'osd.xml.patch' 'base.xml.patch' - 'menu-ui-vert.xml.patch' 'notification-ui.xml.patch' - 'schedule-ui.xml.patch' 'qtlook.txt.patch' - 'recordings-ui.xml.patch' 'video-ui.xml.patch') + 'controls-ui.xml.patch' 'menu-ui-vert.xml.patch' + 'music-base.xml.patch' 'music-ui.xml.patch' + 'notification-ui.xml.patch' 'qtlook.txt.patch' + 'recordings-ui.xml.patch' 'schedule-ui.xml.patch' + 'status-ui.xml.patch' 'stream-ui.xml.patch' 'video-ui.xml.patch') #The LinHES theme is based on TintedGlass 4.56 by Harley Peters source=(`echo ${patches[@]:0}` 'themeinfo.xml' 'install-ui.xml' 'osd_subtitle.xml' 'bubble_background.png' 'preview.png' 'blank_coverart.png' 'checkmark.png' 'error.png' 'gears.png' 'question.png' 'warning.png' - 'progdetails_page1.html' + 'progdetails_page1.html' 'image-ui.xml' 'LHLogo.png' 'LHLogoAndText.png') install=$pkgname.install @@ -70,8 +72,6 @@ package() { rsync -pL $srcdir/warning.png $pkgdir/$THEMEROOT/LinHES/images/ rsync -pL $srcdir/preview.png $pkgdir/$THEMEROOT/LinHES/ - #tux_thoughts.png is the thought bubble for the menu descriptions - #rsync -pL $srcdir/tux_thoughts.png $pkgdir/$THEMEROOT/LinHES/images/ rsync -pL $srcdir/LHLogo.png $pkgdir/$THEMEROOT/LinHES/images/ rsync -pL $srcdir/LHLogoAndText.png $pkgdir/$THEMEROOT/LinHES/images/ @@ -80,29 +80,33 @@ package() { msg "Modifying yellows and blue to LinHES yellow and blue" #yellow - grep -lr '#d9d900' $pkgdir/$THEMEROOT/LinHES/ | xargs sed -i "s/\#d9d900/\#ebb81c/g" || return 0 + grep -lr '#d9d900' $pkgdir/$THEMEROOT/LinHES/ | xargs -r sed -i "s/\#d9d900/\#ebb81c/g" #darkyellow - grep -lr '#CCCC29' $pkgdir/$THEMEROOT/LinHES/ | xargs sed -i "s/\#CCCC29/\#ebb81c/g" || return 0 + grep -lr '#CCCC29' $pkgdir/$THEMEROOT/LinHES/ | xargs -r sed -i "s/\#CCCC29/\#ebb81c/g" #blue - grep -lr '#3a9ade' $pkgdir/$THEMEROOT/LinHES/ | xargs sed -i "s/\#3a9ade/\#0072bc/g" || return 0 + grep -lr '#3a9ade' $pkgdir/$THEMEROOT/LinHES/ | xargs -r sed -i "s/\#3a9ade/\#0072bc/g" msg "Modifying fonts to Overlock" - grep -lr 'DejaVu Sans' $pkgdir/$THEMEROOT/LinHES/ | xargs sed -i "s/\DejaVu Sans/\Overlock/g" + grep -lr 'DejaVu Sans' $pkgdir/$THEMEROOT/LinHES/ | xargs -r sed -i "s/\DejaVu Sans/\Overlock/g" msg "Updating themeinfo.xml version number" - IFS="." read -a array <<< "$pkgver" - sed -i "s/MAJ_VER/${array[0]}/" $pkgdir/$THEMEROOT/LinHES/themeinfo.xml - sed -i "s/MIN_VER/${array[1]}${pkgrel}/" $pkgdir/$THEMEROOT/LinHES/themeinfo.xml + sed -i "s/MAJ_VER/${pkgver//.}/" $pkgdir/$THEMEROOT/LinHES/themeinfo.xml + sed -i "s/MIN_VER/${pkgrel}/" $pkgdir/$THEMEROOT/LinHES/themeinfo.xml } md5sums=('2dca856c2a4d1f959473512c94e43b60' - '196b4d6691e95b87a76a9ed8be31a3d9' - 'f2b9c85519e80843294315a42870e582' - '43b1f213fd392fb07aac503e775e27bc' + '3fc2c8838a9e331a2d19c114760a5acb' + '66dd0365257d88b48ffeec00289e3b22' + 'ed56a335f8523d288609a81c005cab3f' + 'b90b745c72a057c78ebd0b6f2c5530b9' + 'a0ea2d3e386c0b483b31aa1a2703f9eb' + '8f8c27146e11954f60913da6d1fce073' '80bb72994eca59ca6dc9034ac185e7cc' - '22ff4044c8c29560451fb51dcbf4d44e' '9fe3371a8b964a7028126405cfaa330b' - 'ca7efe27ec941e341a555451a48f42ed' - '0d62c91c3c1fe76a4549459741591312' + '537e12f58ae8da81176d8b982ac9c783' + '0a50f8ecd3d73622b31b52b905307c34' + '4d01487b534e45c631734501ec0da501' + '8312aff444945f80a76100696c81cb2e' + '5527190d8dd74e720b9160f851727390' '5a8fb2a5f0e657d52be6f0a6a006ce72' '35d77d91125e46728a30ab23d0903223' 'bfc32b9fa5dca3d46dd6f365ecb449b5' @@ -115,5 +119,6 @@ md5sums=('2dca856c2a4d1f959473512c94e43b60' 'e8ac15e38b3dc99c9e889e439ba356de' 'e8cf0d3a55ba3be47deae55c05432141' '58834fbee0230c713802c61e635cbab0' + '3f600b966bd813dd27f620762ddb3ac8' 'b51ef0cbf8ed2d3a8c1a8257a89aceff' '09ad14842f828b7a8d24070ec8214fe5') diff --git a/abs/core/linhes-theme/base.xml.patch b/abs/core/linhes-theme/base.xml.patch index f672114..1f3b71a 100644 --- a/abs/core/linhes-theme/base.xml.patch +++ b/abs/core/linhes-theme/base.xml.patch @@ -1,5 +1,5 @@ ---- base.xml.orig 2016-01-13 18:47:41.473066307 +0000 -+++ base.xml 2016-01-13 01:12:57.516392855 +0000 +--- base.xml.orig 2016-12-13 20:41:54.779274682 +0000 ++++ base.xml 2017-01-12 17:34:48.863983285 +0000 @@ -3,55 +3,55 @@ <mythuitheme> @@ -126,7 +126,18 @@ </fontdef> <fontdef name="basesupersmallgreen" from="basesupersmall"> -@@ -241,55 +241,55 @@ +@@ -200,6 +200,10 @@ + <color>#d97616</color> + </fontdef> + ++ <fontdef name="basemediumorange" from="basemedium"> ++ <color>#d97616</color> ++ </fontdef> ++ + <fontdef name="baseextrasmallpurple" from="baseextrasmall"> + <color>#9898d9</color> + </fontdef> +@@ -241,55 +245,55 @@ </fontdef> <fontdef name="basesupersmallyellow" from="basesupersmall"> @@ -195,7 +206,7 @@ </fontdef> <!-- Base definition of a textarea --> -@@ -305,7 +305,7 @@ +@@ -305,7 +309,7 @@ <font>baseextrasmallverylightgrey</font> <font state="disabled">baseextrasmalllightgrey</font> <font state="error">baseextrasmallred</font> @@ -204,7 +215,7 @@ <font state="normal">baseextrasmallverylightgrey</font> <font state="running">baseextrasmallgreen</font> <cutdown>yes</cutdown> -@@ -317,7 +317,7 @@ +@@ -317,7 +321,7 @@ <font>basesmallerverylightgrey</font> <font state="disabled">basesmallerlightgrey</font> <font state="error">basesmallerred</font> @@ -213,7 +224,7 @@ <font state="normal">basesmallerverylightgrey</font> <font state="running">basesmallergreen</font> <cutdown>yes</cutdown> -@@ -329,7 +329,7 @@ +@@ -329,7 +333,7 @@ <font>basesmallverylightgrey</font> <font state="disabled">basesmalllightgrey</font> <font state="error">basesmallred</font> @@ -222,7 +233,7 @@ <font state="normal">basesmallverylightgrey</font> <font state="running">basesmallgreen</font> <cutdown>yes</cutdown> -@@ -411,7 +411,7 @@ +@@ -411,7 +415,7 @@ <area>283,436,50,11</area> <type>roundbox</type> <fill color="#000000" alpha="200" /> @@ -231,7 +242,7 @@ </shape> <shape name="base_backdrop_line"> -@@ -424,7 +424,7 @@ +@@ -424,7 +428,7 @@ <!-- Base definition of a base popup backdrop --> <shape name="base_popup_backdrop" from="base_backdrop"> @@ -240,7 +251,37 @@ </shape> <!-- Base definition of a heading group --> -@@ -667,10 +667,10 @@ +@@ -535,10 +539,10 @@ + <type>box</type> + <fill style="gradient"> + <gradient direction="horizontal" alpha="50"> +- <stop position="0" color="#d6d6d6" /> +- <stop position="25" color="#d6d6d6" alpha="255" /> +- <stop position="50" color="#d6d6d6" /> +- <stop position="100" color="#d6d6d6" /> ++ <stop position="0" color="#0072bc" /> ++ <stop position="25" color="#0072bc" alpha="255" /> ++ <stop position="50" color="#0072bc" /> ++ <stop position="100" color="#0072bc" /> + </gradient> + </fill> + </shape> +@@ -547,10 +551,10 @@ + <type>box</type> + <fill style="gradient"> + <gradient direction="horizontal" alpha="50"> +- <stop position="0" color="#d6d6d6" /> +- <stop position="50" color="#d6d6d6" /> +- <stop position="75" color="#d6d6d6" alpha="255"/> +- <stop position="100" color="#d6d6d6" /> ++ <stop position="0" color="#0072bc" /> ++ <stop position="50" color="#0072bc" /> ++ <stop position="75" color="#0072bc" alpha="255"/> ++ <stop position="100" color="#0072bc" /> + </gradient> + </fill> + </shape> +@@ -667,10 +671,10 @@ <type>box</type> <fill style="gradient"> <gradient direction="horizontal" alpha="50"> @@ -255,7 +296,7 @@ </gradient> </fill> </shape> -@@ -679,10 +679,10 @@ +@@ -679,10 +683,10 @@ <type>box</type> <fill style="gradient"> <gradient direction="horizontal" alpha="50"> @@ -270,7 +311,37 @@ </gradient> </fill> </shape> -@@ -863,7 +863,7 @@ +@@ -700,10 +704,10 @@ + <type>box</type> + <fill style="gradient"> + <gradient direction="horizontal" alpha="50"> +- <stop position="0" color="#d6d6d6" /> +- <stop position="25" color="#d6d6d6" alpha="255" /> +- <stop position="50" color="#d6d6d6" /> +- <stop position="100" color="#d6d6d6" /> ++ <stop position="0" color="#0072bc" /> ++ <stop position="25" color="#0072bc" alpha="255" /> ++ <stop position="50" color="#0072bc" /> ++ <stop position="100" color="#0072bc" /> + </gradient> + </fill> + </shape> +@@ -712,10 +716,10 @@ + <type>box</type> + <fill style="gradient"> + <gradient direction="horizontal" alpha="50"> +- <stop position="0" color="#d6d6d6" /> +- <stop position="50" color="#d6d6d6" /> +- <stop position="75" color="#d6d6d6" alpha="255"/> +- <stop position="100" color="#d6d6d6" /> ++ <stop position="0" color="#0072bc" /> ++ <stop position="50" color="#0072bc" /> ++ <stop position="75" color="#0072bc" alpha="255"/> ++ <stop position="100" color="#0072bc" /> + </gradient> + </fill> + </shape> +@@ -863,7 +867,7 @@ <type>roundbox</type> <fill color="#1a1a1a" alpha="175" /> <line color="#454545" alpha="180" width="2" /> @@ -279,7 +350,7 @@ </shape> <shape name="select_bar_top_highlight"> <area>0,0,100%,2</area> -@@ -956,7 +956,7 @@ +@@ -956,7 +960,7 @@ <type>roundbox</type> <fill color="#333333" alpha="175" /> <line color="#454545" alpha="180" width="2" /> @@ -288,7 +359,7 @@ </shape> </group> -@@ -967,7 +967,7 @@ +@@ -967,7 +971,7 @@ <type>roundbox</type> <fill color="#1a1a1a" alpha="175" /> <line color="#454545" alpha="180" width="2" /> @@ -297,7 +368,7 @@ </shape> <shape name="select_bar_top_highlight"> <area>0,0,100%,2</area> -@@ -1060,7 +1060,7 @@ +@@ -1060,7 +1064,7 @@ <type>roundbox</type> <fill color="#333333" alpha="175" /> <line color="#454545" alpha="180" width="2" /> @@ -306,7 +377,7 @@ </shape> </group> -@@ -1071,7 +1071,7 @@ +@@ -1071,7 +1075,7 @@ <type>roundbox</type> <fill color="#1a1a1a" alpha="175" /> <line color="#454545" alpha="180" width="2" /> @@ -315,7 +386,7 @@ </shape> <shape name="select_bar_top_highlight"> <area>0,0,100%,2</area> -@@ -1164,7 +1164,7 @@ +@@ -1164,7 +1168,7 @@ <type>roundbox</type> <fill color="#1a1a1a" alpha="175" /> <line color="#454545" alpha="180" width="2" /> @@ -324,7 +395,7 @@ </shape> </group> -@@ -1233,7 +1233,7 @@ +@@ -1233,7 +1237,7 @@ <type>roundbox</type> <fill color="#333333" alpha="175" /> <line color="#454545" alpha="180" width="2" /> @@ -333,3 +404,110 @@ </shape> </group> +@@ -1455,7 +1459,7 @@ + <area>0,0,100%,100%</area> + </group> + <textarea name="buttontext"> +- <font>basesmall</font> ++ <font>basesmallyellow</font> + </textarea> + </state> + <state name="selectedinactive" from="active"> +@@ -1564,6 +1568,9 @@ + <group name="select_bar" from="base_select_bar_selectedinactive_group"> + <area>0,0,100%,100%</area> + </group> ++ <textarea name="buttontext"> ++ <font>basesmall</font> ++ </textarea> + <imagetype name="buttonarrow"> + <filename>images/lists_right_arrow.png</filename> + <alpha>0</alpha> +@@ -1664,6 +1671,7 @@ + </state> + </statetype> + <textarea name="buttontext" from="base_text_font_state_small"> ++ <font state="normal">basesmallyellow</font> + </textarea> + <statetype name="buttoncheck"> + <state type="off"> +@@ -2186,7 +2194,7 @@ + </shape> + + <shape name="popup-seperator-line" from="base_line"> +- <area>23,212,556,2</area> ++ <area>23,174,556,2</area> + </shape> + + <shape name="popup-third-line" from="base_highlight_line"> +@@ -2202,18 +2210,18 @@ + </shape> + + <shape name="popup-arrows-backdrop" from="base_arrows_backdrop"> +- <area>3,488,50,13</area> ++ <area>549,488,50,13</area> + </shape> + + <textarea name="messagearea" from="basetextarea"> +- <area>16,10,570,196</area> +- <font>basesmalldarkyellow</font> ++ <area>16,10,570,158</area> ++ <font>basesmall</font> + <multiline>yes</multiline> + <align>allcenter</align> + </textarea> + + <buttonlist name="list" from="base_button_list"> +- <area>8,216,586,264</area> ++ <area>8,178,586,302</area> + <statetype name="buttonitem"> + <state name="active"> + <area>0,0,100%,34</area> +@@ -2244,10 +2252,10 @@ + </state> + </statetype> + <statetype name="upscrollarrow"> +- <position>2,274</position> ++ <position>548,312</position> + </statetype> + <statetype name="downscrollarrow"> +- <position>22,274</position> ++ <position>568,312</position> + </statetype> + </buttonlist> + </window> +@@ -2299,7 +2307,7 @@ + </shape> + + <shape name="large-dialogbox-arrows-backdrop" from="base_arrows_backdrop"> +- <area>3,488,50,13</area> ++ <area>761,488,50,13</area> + </shape> + + <textarea name="messagearea" from="basetextarea"> +@@ -2332,10 +2340,10 @@ + </state> + </statetype> + <statetype name="upscrollarrow"> +- <position>2,198</position> ++ <position>762,198</position> + </statetype> + <statetype name="downscrollarrow"> +- <position>22,198</position> ++ <position>782,198</position> + </statetype> + </buttonlist> + </window> +@@ -2795,10 +2803,10 @@ + </state> + </statetype> + <statetype name="upscrollarrow"> +- <position>0,272</position> ++ <position>550,272</position> + </statetype> + <statetype name="downscrollarrow"> +- <position>20,272</position> ++ <position>570,272</position> + </statetype> + </buttonlist> + diff --git a/abs/core/linhes-theme/blank_coverart.png b/abs/core/linhes-theme/blank_coverart.png Binary files differindex c44148e..c44148e 100755..100644 --- a/abs/core/linhes-theme/blank_coverart.png +++ b/abs/core/linhes-theme/blank_coverart.png diff --git a/abs/core/linhes-theme/checkmark.png b/abs/core/linhes-theme/checkmark.png Binary files differindex 0c8ba2d..0c8ba2d 100755..100644 --- a/abs/core/linhes-theme/checkmark.png +++ b/abs/core/linhes-theme/checkmark.png diff --git a/abs/core/linhes-theme/controls-ui.xml.patch b/abs/core/linhes-theme/controls-ui.xml.patch new file mode 100644 index 0000000..6da0bcd --- /dev/null +++ b/abs/core/linhes-theme/controls-ui.xml.patch @@ -0,0 +1,11 @@ +--- controls-ui.xml.orig 2016-12-13 20:38:02.325765836 +0000 ++++ controls-ui.xml 2016-12-13 20:34:54.356551993 +0000 +@@ -73,7 +73,7 @@ + <area>0,0,1280,720</area> + + <textarea name="heading" from="base_heading"> +- <value>Edit keys</value> ++ <value>Edit Keys</value> + </textarea> + + <shape name="edit-keys-backdrop" from="base_backdrop"> diff --git a/abs/core/linhes-theme/error.png b/abs/core/linhes-theme/error.png Binary files differindex d5ccc2d..d5ccc2d 100755..100644 --- a/abs/core/linhes-theme/error.png +++ b/abs/core/linhes-theme/error.png diff --git a/abs/core/linhes-theme/gears.png b/abs/core/linhes-theme/gears.png Binary files differindex b2f78d6..b2f78d6 100755..100644 --- a/abs/core/linhes-theme/gears.png +++ b/abs/core/linhes-theme/gears.png diff --git a/abs/core/linhes-theme/image-ui.xml b/abs/core/linhes-theme/image-ui.xml new file mode 100644 index 0000000..2e4f996 --- /dev/null +++ b/abs/core/linhes-theme/image-ui.xml @@ -0,0 +1,632 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE mythuitheme SYSTEM "http://www.mythtv.org/schema/mythuitheme.dtd"> +<mythuitheme> + <!-- A gallery button showing a picture, video or folder --> + <window name="gallery"> + + <textarea name="heading" from="base_heading"> + <value>Image Gallery</value> + </textarea> + + <shape name="help-instr-backdrop" from="base_backdrop"> + <area>0,36,1280,40</area> + <type>box</type> + </shape> + + <shape name="help-instr-top-line" from="base_line"> + <area>0,37,1280,2</area> + </shape> + + <shape name="help-instr-bottom-line" from="base_line"> + <area>0,73,1280,2</area> + </shape> + + <shape name="arrows-backdrop" from="base_backdrop"> + <area>1215,697,50,20</area> + </shape> + + <!--shows path to current image --> + <textarea name="breadcrumbs"> + <area>110,39,900,34</area> + <font>basesmallyellow</font> + <cutdown>no</cutdown> + <scroll direction="horizontal" startdelay="0" returndelay="0"/> + <align>left,vcenter</align> + </textarea> + + <!-- shows current position in grid eg '1/123' --> + <textarea name="position" from="basetextarea"> + <area>15,39,100,34</area> + <font>basesmall</font> + <align>left,vcenter</align> + </textarea> + + <!-- Mandatory: the image list 10 columns x 6 rows --> + <buttonlist name="images0"> + <area>15,80,100%-10,100%-30</area> + <buttonarea>0,15,100%,100%-10</buttonarea> + <wrapstyle>flowing</wrapstyle> + <layout>grid</layout> + <arrange>fixed</arrange> + <align>allcenter</align> + <spacing>0</spacing> <!-- (100% - 10*10%) / (10-1) or 0% --> + <statetype name="buttonitem"> + <area>0,0,100%,100%</area> + <state name="active"> + <area>0,0,10%,16%</area> + <shape name="buttonbackground" from="base_backdrop"> + <area>0,0,100%,100%</area> + </shape> + <shape name="buttonbackground-line" from="base_backdrop_line"> + <area>1%,1%,99%,99%</area> + </shape> + <!-- Shows a picture image --> + <imagetype name="buttonimage"> + <area>4%,4%,96%,96%</area> + <preserveaspect>yes</preserveaspect> + </imagetype> + <!-- Shows a single folder image --> + <imagetype name="folderimage" from="buttonimage"> + </imagetype> + <!-- Shows image for default folder --> + <imagetype name="thumbimage0" from="buttonimage"> + </imagetype> + <!-- Shows a video image --> + <imagetype name="videoimage" from="buttonimage"> + </imagetype> + <!-- Show a background image depending on node type --> + <statetype name="buttontype"> + <area>0,0,100%,100%</area> + <state name="subfolder"> + <area>0,0,100%,100%</area> + <imagetype name="background"> + <area>30%,30%,55%,55%</area> + <filename>images/folderclosed.png</filename> + <preserveaspect>yes</preserveaspect> + </imagetype> + </state> + <state name="device" from="subfolder"/> + <state name="image"> + <area>0,0,100%,100%</area> + <imagetype name="background"> + <area>0,0,100%,100%</area> + <filename>images/image_gallery_no_image</filename> + <alpha>64</alpha> + </imagetype> + </state> + <state name="video"> + <area>0,0,50%,50%</area> + <imagetype name="background"> + <area>0,0,100%,100%</area> + <filename>images/no_preview_with_fanart.png</filename> + <preserveaspect>yes</preserveaspect> + </imagetype> + </state> + </statetype> + <!-- Show how many images / directories are in this directory --> + <textarea name="childcount"> + <area>0,0,100%,100%</area> + <font>baseextrasmall</font> + <align>allcenter</align> + </textarea> + <!-- Show up arrow on parent dir with ancestors --> + <statetype name="parenttype"> + <area>0,0,100%,100%</area> + <state name="upfolder"> + <area>0,0,100%,100%</area> + <imagetype name="icon"> + <area>30%,30%,55%,55%</area> + <filename>images/mv_gallery_dir_up.png</filename> + <preserveaspect>yes</preserveaspect> + </imagetype> + </state> + </statetype> + <!-- Darken hidden files/ folders --> + <statetype name="buttonstate"> + <area>0,0,100%,100%</area> + <state name="visible"/> + <state name="hidden"> + <area>0,0,100%,100%</area> + <shape name="hidden_background_shape"> + <area>0,0,100%,100%</area> + <type>box</type> + <fill color="#000000" alpha="128"/> + </shape> + </state> + </statetype> + <!-- Shows that the image was marked/selected and + might be manipulated with other images --> + <statetype name="buttoncheck"> + <area>0,0,100%,100%</area> + <state type="full"> + <area>70%,5%,76%,26%</area> + <shape name="marked_background"> + <area>0,0,100%,100%</area> + <type>ellipse</type> + <fill color="#000000"/> + </shape> + <imagetype name="marked"> + <area>4%,4%,96%,96%</area> + <filename>images/checkmark.png</filename> + <preserveaspect>no</preserveaspect> + </imagetype> + </state> + </statetype> + <shape name="buttontext-backdrop" from="base_backdrop" depends="buttontext"> + <area>3%,97%-22,97%,22</area> + <type>roundbox</type> + <cornerradius>4</cornerradius> + </shape> + <textarea name="buttontext"> + <area>2%,97%-22,97%,22</area> + <font>baseextrasmall</font> + <align>allcenter</align> + </textarea> + </state> + + <state name="selectedactive" from="active"> + <area>-8,-8,10%+16,16%+16</area> + <shape name="buttonbackground"> + <area>0,0,100%,100%</area> + <type>roundbox</type> + <fill color="#101017" alpha="255" /> + <cornerradius>8</cornerradius> + </shape> + <shape name="buttonbackground-line"> + <area>0,0,100%,100%</area> + <type>roundbox</type> + <fill color="#000000" alpha="0" /> + <line color="#0072bc" alpha="45" width="4" /> + <cornerradius>8</cornerradius> + </shape> + <shape name="buttonbackground-top-highlight-line"> + <area>8%,0,92%,4</area> + <type>box</type> + <fill style="gradient"> + <gradient direction="horizontal" alpha="0"> + <stop position="0" color="#0072bc" /> + <stop position="50" color="#0072bc" alpha="180" /> + <stop position="100" color="#0072bc" /> + </gradient> + </fill> + </shape> + <shape name="buttonbackground-bottom-highlight-line" from="buttonbackground-top-highlight-line"> + <area>8%,100%-4,92%,4</area> + </shape> + <shape name="buttonbackground-left-highlight-line"> + <area>0,8%,4,92%</area> + <type>box</type> + <fill style="gradient"> + <gradient alpha="0" direction="vertical"> + <stop position="0" color="#0072bc" /> + <stop position="50" color="#0072bc" alpha="220" /> + <stop position="100" color="#0072bc" /> + </gradient> + </fill> + </shape> + <shape name="buttonbackground-right-highlight-line" from="buttonbackground-left-highlight-line"> + <area>100%-4,8%,4,92%</area> + </shape> + + <statetype name="buttontype" depends="!parenttype"> + <area>0,0,100%,100%</area> + <state name="subfolder"> + <area>0,0,100%,100%</area> + <imagetype name="background"> + <area>30%,30%,55%,55%</area> + <filename>images/folderopen.png</filename> + <preserveaspect>yes</preserveaspect> + </imagetype> + </state> + </statetype> + + <!-- Show up arrow on parent dir with ancestors --> + <statetype name="parenttype"> + <state name="upfolder"> + <imagetype name="icon"> + <filename>images/mv_gallery_dir_up_open.png</filename> + </imagetype> + </state> + </statetype> + <!-- Show how many images / directories are in this directory --> + <textarea name="childcount"> + <font>baseextrasmallyellow</font> + </textarea> + <textarea name="buttontext"> + <area>2%,97%-22,97%,22</area> + <font>baseextrasmallyellow</font> + <align>allcenter</align> + </textarea> + </state> + + <state name="inactive" from="active"/> + + <state name="selectedinactive" from="active"/> + </statetype> + + <statetype name="upscrollarrow"> + <position>1207,623</position> + <state type="off"> + <imagetype name="upoff"> + <filename>images/lists_up_arrow.png</filename> + <alpha>80</alpha> + </imagetype> + </state> + <state type="full"> + <imagetype name="upon"> + <filename>images/lists_up_arrow.png</filename> + <alpha>200</alpha> + </imagetype> + </state> + </statetype> + <statetype name="downscrollarrow"> + <position>1227,623</position> + <state type="off"> + <imagetype name="dnoff"> + <filename>images/lists_down_arrow.png</filename> + <alpha>80</alpha> + </imagetype> + </state> + <state type="full"> + <imagetype name="dnon"> + <filename>images/lists_down_arrow.png</filename> + <alpha>200</alpha> + </imagetype> + </state> + </statetype> + + </buttonlist> + + <!-- the image list 8 columns x 4 rows --> + <buttonlist name="images1" from="images0"> + <spacing>7</spacing> <!-- (100% - 8*12%) / (8-1) or 0.57% --> + <statetype name="buttonitem"> + <state name="active"> + <area>0,0,12%,24%</area> + </state> + <state name="selectedactive"> + <area>-8,-8,12%+16,24%+16</area> + </state> + </statetype> + </buttonlist> + + <!-- the image list 6 columns x 3 rows --> + <buttonlist name="images2" from="images0"> + <spacing>10</spacing> <!-- (100% - 6*16%) / (6-1) or 0.8% --> + <statetype name="buttonitem"> + <state name="active"> + <area>0,0,16%,32%</area> + </state> + <state name="selectedactive"> + <area>-10,-12,16%+20,32%+20</area> + </state> + </statetype> + </buttonlist> + + <!-- the image list 4 columns x 2 rows --> + <buttonlist name="images3" from="images0"> + <spacing>0</spacing> <!-- (100% - 4*25%) / (4-1) or 0% --> + <statetype name="buttonitem"> + <state name="active"> + <area>0,0,25%,50%</area> + </state> + <state name="selectedactive"> + <area>-9,-9,25%+16,50%+10</area> + </state> + </statetype> + </buttonlist> + + <!-- shows a message when no images are available + in the current directory --> + <textarea name="noimages" from="basetextarea"> + <area>20,76,1240,589</area> + <font>basemedium</font> + <align>allcenter</align> + </textarea> + + <!-- Mandatory: Shows file info overlay --> + <buttonlist name="infolist" from="base_list"> + <area>10,80,510,100%-30</area> + <layout>vertical</layout> + <spacing>0</spacing> + <scrollstyle>free</scrollstyle> + <arrange>stack</arrange> + <wrapstyle>items</wrapstyle> + <align>center</align> + <buttonarea>0,0,100%,100%</buttonarea> + <statetype name="buttonitem"> + <state name="active"> + <area>0,0,100%,30</area> + <group name="select_bar" from="base_select_bar_active_group"> + <area>0,0,100%,100%</area> + <shape name="select_bar"> + <fill color="#000000" alpha="210" /> + <type>box</type> + </shape> + </group> + <textarea name="name" from="basetextarea"> + <area>10,0,100%-10,30</area> + <scroll direction="left" /> + <cutdown>yes</cutdown> + <template>%NAME%: %VALUE%</template> + </textarea> + </state> + <state name="selectedactive" from="active" /> + <state name="selectedinactive" from="active" /> + </statetype> + <statetype name="upscrollarrow"> + <position>20,-15</position> + <state type="off"> + <imagetype name="upoff"> + <alpha>0</alpha> + </imagetype> + </state> + <state type="full"> + <imagetype name="upon"> + <filename>images/lists_up_arrow.png</filename> + <alpha>200</alpha> + </imagetype> + </state> + </statetype> + <statetype name="downscrollarrow"> + <position>20,100%+10</position> + <state type="off"> + <imagetype name="dnoff"> + <alpha>0</alpha> + </imagetype> + </state> + <state type="full"> + <imagetype name="dnon"> + <filename>images/lists_down_arrow.png</filename> + <alpha>200</alpha> + </imagetype> + </state> + </statetype> + </buttonlist> + + <!--Shows scan progress--> + <group name="progress"> + <area>0,0,100%,100%</area> + + <animation trigger="AboutToShow"> + <section> + <alpha start="0" end="255" easingcurve="OutQuart"/> + <zoom start="0" end="100" easingcurve="OutQuart"/> + </section> + </animation> + + <animation trigger="AboutToHide"> + <section> + <alpha start="255" end="0" easingcurve="InQuart"/> + <zoom start="100" end="0" easingcurve="InQuart"/> + </section> + </animation> + + <shape name="osd-status-backdrop" depends="scanprogresstext"> + <area>64,624,1152,60</area> + <type>roundbox</type> + <fill color="#000000" alpha="140" /> + <cornerradius>8</cornerradius> + </shape> + + <shape name="osd-status-backdrop-line" depends="scanprogresstext"> + <area>65,625,1150,58</area> + <type>roundbox</type> + <fill color="#000000" alpha="0" /> + <line color="#ffffff" alpha="45" width="2" /> + <cornerradius>6</cornerradius> + </shape> + + <shape name="top-line" depends="scanprogresstext"> + <area>66,626,1148,2</area> + <type>box</type> + <fill style="gradient"> + <gradient direction="horizontal" alpha="0"> + <stop position="0" color="#ffffff" /> + <stop position="50" color="#ffffff" alpha="120" /> + <stop position="100" color="#ffffff" /> + </gradient> + </fill> + </shape> + + <shape name="bottom-line" from="top-line" depends="scanprogresstext"> + <area>66,680,1148,2</area> + </shape> + + <shape name="left-line" depends="scanprogresstext"> + <area>66,628,2,52</area> + <type>box</type> + <fill style="gradient"> + <gradient direction="vertical" alpha="0"> + <stop position="0" color="#ffffff" /> + <stop position="50" color="#ffffff" alpha="180" /> + <stop position="100" color="#ffffff" /> + </gradient> + </fill> + </shape> + + <shape name="right-line" from="left-line" depends="scanprogresstext"> + <area>1212,628,2,52</area> + </shape> + + <!-- Progress bar--> + <progressbar name="scanprogressbar"> + <area>90,650,1100,8</area> + <layout>horizontal</layout> + <style>reveal</style> + <imagetype name="background"> + <area>0,0,100%,100%</area> + <filename>images/osd/progressbar_background.png</filename> + </imagetype> + <imagetype name="progressimage"> + <area>0,0,100%,100%</area> + <filename>images/osd/progressbar_fill.png</filename> + </imagetype> + </progressbar> + + <!--Shows numerical scan progress--> + <textarea name="scanprogresstext" from="basetextarea"> + <area>90,657,1100,24</area> + <font>basesmall</font> + <align>allcenter</align> + </textarea> + </group> + + <!-- shows state of type filter --> + <textarea name="typefilter" from="basetextarea"> + <area>1100,39,100,34</area> + <font>basesmallblue</font> + <align>left,vcenter</align> + </textarea> + <textarea name="typefilterAll" from="basetextarea" depends="!typefilter"> + <value>All</value> + <area>1100,39,100,34</area> + <font>basesmallblue</font> + <align>left,vcenter</align> + </textarea> + <textarea name="typefilterlabel" from="basetextarea"> + <value>Show:</value> + <area>1035,39,60,34</area> + <font>basesmallblue</font> + <align>right,vcenter</align> + </textarea> + + <!-- shows state of hidden filter --> + <textarea name="hidefilter" from="basetextarea"> + <area>1185,39,80,34</area> + <font>basesmallblue</font> + <align>right,vcenter</align> + </textarea> + </window> + + <!-- Gallery Slideshow window which shows the a single image only or a slideshow. --> + <window name="slideshow"> + + <!-- Extra small text for Gallery images --> + <fontdef name="gallerytext" from="basesmall"> + <outlinecolor>#000000</outlinecolor> + <outlinesize>2</outlinesize> + </fontdef> + + <!-- the background behind the images --> + <shape name="background_shape"> + <area>0,0,100%,100%</area> + <fill color="#000000" alpha="255"/> + </shape> + + <!-- an image --> + <imagetype name="image"> + <area>0,0,100%,100%</area> + <preserveaspect>yes</preserveaspect> + </imagetype> + + <!-- Represents "Show Captions" state for use as a dependancy by other widgets + Set = Hide; empty = Show --> + <textarea name="hidecaptions" from="basetextarea"> + <area>0,0,0,0</area> + </textarea> + + <!-- End/Loading/Failed to load status --> + <textarea name="status" from="basetextarea" depends="!hidecaptions"> + <area>200,0,100%-200,30</area> + <font>basesmall</font> + <align>hcenter,top</align> + </textarea> + + <!-- Slide count --> + <textarea name="slidecount" from="basetextarea" depends="!hidecaptions"> + <area>100%-200,0,190,30</area> + <font>gallerytext</font> + <align>right, vcentre</align> + </textarea> + + <!-- Date/Comment --> + <textarea name="caption" from="basetextarea" depends="!hidecaptions"> + <area>10,100%-28,100%-10,30</area> + <font>gallerytext</font> + <align>right, vcenter</align> + <cutdown>no</cutdown> + <scroll direction="horizontal"/> + </textarea> + + <!-- Shows file info overlay --> + <buttonlist name="infolist" from="base_list"> + <area>10,30,510,100%-30</area> + <layout>vertical</layout> + <spacing>1</spacing> + <scrollstyle>free</scrollstyle> + <arrange>stack</arrange> + <wrapstyle>items</wrapstyle> + <align>center</align> + <buttonarea>0,0,100%,100%</buttonarea> + <statetype name="buttonitem"> + <state name="active"> + <area>0,0,100%,30</area> + <group name="select_bar" from="base_select_bar_active_group"> + <area>0,0,100%,100%</area> + </group> + <textarea name="name" from="basetextarea"> + <area>15,0,100%,30</area> + <cutdown>yes</cutdown> + <template>%NAME%: %VALUE%</template> + </textarea> + </state> + <state name="selectedactive"> + <area>0,0,100%,64</area> + <shape name="select_bar_backdrop_line" from="base_backdrop_line"> + <area>0,0,100%,100%-2</area> + <type>box</type> + </shape> + <group name="select_bar" from="base_select_bar_selectedactive_group"> + <area>1,1,100%-2,100%-2</area> + </group> + + <shape name="select_bar_left_line" from="base_highlight_vertical_line"> + <area>0,0,2,100%</area> + </shape> + <shape name="select_bar_right_line" from="base_highlight_vertical_line"> + <area>100%-4,0,2,100%</area> + </shape> + <textarea name="name" from="basetextarea"> + <area>15,5,100%,50</area> + <multiline>yes</multiline> + <scroll direction="up" rate="20"/> + <template>%NAME%: %VALUE%</template> + <font>basesmallyellow</font> + </textarea> + </state> + <state name="selectedinactive" from="active" /> + </statetype> + <statetype name="upscrollarrow"> + <position>20,-15</position> + <state type="off"> + <imagetype name="upoff"> + <alpha>0</alpha> + </imagetype> + </state> + <state type="full"> + <imagetype name="upon"> + <filename>images/lists_up_arrow.png</filename> + <alpha>200</alpha> + </imagetype> + </state> + </statetype> + <statetype name="downscrollarrow"> + <position>20,100%+10</position> + <state type="off"> + <imagetype name="dnoff"> + <alpha>0</alpha> + </imagetype> + </state> + <state type="full"> + <imagetype name="dnon"> + <filename>images/lists_down_arrow.png</filename> + <alpha>200</alpha> + </imagetype> + </state> + </statetype> + </buttonlist> + + </window> + +</mythuitheme> diff --git a/abs/core/linhes-theme/menu-ui-vert.xml.patch b/abs/core/linhes-theme/menu-ui-vert.xml.patch index b1dbaaf..3a0c3d9 100644 --- a/abs/core/linhes-theme/menu-ui-vert.xml.patch +++ b/abs/core/linhes-theme/menu-ui-vert.xml.patch @@ -1,5 +1,5 @@ ---- menu-ui-vert.xml.orig 2016-01-13 18:48:20.631382184 +0000 -+++ menu-ui-vert.xml 2016-04-13 19:40:10.952214840 +0000 +--- menu-ui-vert.xml.orig 2017-01-12 02:27:03.269571903 +0000 ++++ menu-ui-vert.xml 2017-01-12 02:19:35.517176026 +0000 @@ -6,18 +6,53 @@ <area>0,0,1280,720</area> @@ -126,7 +126,7 @@ <font>basemediumlightgrey</font> <multiline>yes</multiline> <align>allcenter</align> -@@ -147,40 +227,40 @@ +@@ -147,40 +227,48 @@ </textarea> </state> <state name="selectedactive"> @@ -134,6 +134,7 @@ + <area>-20,0,370,80</area> + <shape name="select_bar_backdrop_line" from="base_backdrop_line"> + <area>0,0,100%,100%-2</area> ++ <line color="#0072bc" alpha="45" width="2" /> + <type>box</type> + </shape> <group name="select_bar" from="base_select_bar_selectedactive_group"> @@ -142,9 +143,16 @@ </group> + <shape name="select_bar_left_line" from="base_highlight_vertical_line"> + <area>0,0,2,100%</area> ++ <fill style="gradient"> ++ <gradient alpha="0" direction="vertical"> ++ <stop position="0" color="#0072bc" /> ++ <stop position="50" color="#0072bc" alpha="180" /> ++ <stop position="100" color="#0072bc" /> ++ </gradient> ++ </fill> + </shape> -+ <shape name="select_bar_right_line" from="base_highlight_vertical_line"> -+ <area>100%-4,0,2,100%</area> ++ <shape name="select_bar_right_line" from="select_bar_left_line"> ++ <area>100%-2,0,2,100%</area> + </shape> <textarea name="buttontext"> - <area>5,0,320,64</area> @@ -192,7 +200,7 @@ <showempty>yes</showempty> <state type="full"> <imagetype name="upon"> -@@ -190,7 +270,7 @@ +@@ -190,7 +278,7 @@ </state> </statetype> <statetype name="downscrollarrow"> diff --git a/abs/core/linhes-theme/music-base.xml.patch b/abs/core/linhes-theme/music-base.xml.patch new file mode 100644 index 0000000..7c8e3bf --- /dev/null +++ b/abs/core/linhes-theme/music-base.xml.patch @@ -0,0 +1,121 @@ +--- music-base.xml.orig 2016-12-13 20:45:06.068067497 +0000 ++++ music-base.xml 2016-12-18 00:17:16.171607805 +0000 +@@ -360,7 +360,6 @@ + <textarea name="title" from="buttontext"> + <area>143,0,1066,30</area> + <align>left,vcenter</align> +- <font>basesmall</font> + <template>%TITLE% by %ARTIST% on %ALBUM%</template> + </textarea> + </state> +@@ -412,9 +411,12 @@ + </textarea> + </state> + <state name="selectedinactive" from="selectedactive"> +- <group name="select_bar" from="base_select_bar_selectedinactive_group"> +- <area>0,0,100%,100%</area> +- </group> ++ <group name="select_bar" from="base_select_bar_selectedinactive_group"> ++ <area>0,0,100%,100%</area> ++ </group> ++ <textarea name="title"> ++ <font>basesmall</font> ++ </textarea> + </state> + </statetype> + <statetype name="upscrollarrow"> +@@ -450,7 +452,7 @@ + <textarea name="shuffletext" from="basetextarea"> + <area>0,0,300,22</area> + <font>basesmaller</font> +- <value>Shuffle Mode: Intelligent</value> ++ <value>Shuffle Mode: Smart</value> + <align>left,vcenter</align> + </textarea> + </state> +@@ -504,7 +506,7 @@ + </statetype> + + <textarea name="playlistposition" from="basetextarea"> +- <area>192,9,170,14</area> ++ <area>192,8,170,14</area> + <font>basesupersmallyellow</font> + <align>right,vcenter</align> + </textarea> +@@ -514,7 +516,7 @@ + </progressbar> + + <textarea name="playlisttime" from="basetextarea"> +- <area>918,9,230,14</area> ++ <area>918,8,230,14</area> + <font>basesupersmallyellow</font> + <align>left,vcenter</align> + </textarea> +@@ -574,7 +576,7 @@ + </imagetype> + + <textarea name="title" from="basetextarea"> +- <area>171,18,938,24</area> ++ <area>171,14,938,24</area> + <font>basesmallyellow</font> + </textarea> + +@@ -615,11 +617,11 @@ + <font>baseevensmaller</font> + <align>allcenter</align> + </textarea> +- ++<!-- + <group name="musiccontrols" from="base_music_controls"> + <position>535,140</position> + </group> +- ++--> + <statetype name="mutestate" from="base_mute_state"> + <position>44,146</position> + </statetype> +@@ -629,11 +631,11 @@ + </textarea> + + <progressbar name="progress" from="baseprogressbar"> +- <position>372,162</position> ++ <position>372,152</position> + </progressbar> + + <textarea name="time" from="basetextarea"> +- <area>918,161,185,14</area> ++ <area>918,149,185,14</area> + <font>basesupersmallyellow</font> + </textarea> + +@@ -718,7 +720,7 @@ + + <textarea name="title" from="basetextarea"> + <area>146,7,987,28</area> +- <font>basesmaller</font> ++ <font>basesmalleryellow</font> + <template>%TITLE% - %ARTIST% - %ALBUM%</template> + </textarea> + +@@ -739,17 +741,17 @@ + <textarea name="volume" from="base_volume"> + <position>190,57</position> + </textarea> +- ++<!-- + <group name="musiccontrols" from="base_music_controls"> + <position>535,68</position> + </group> +- ++--> + <progressbar name="progress" from="baseprogressbar"> +- <position>372,90</position> ++ <position>372,79</position> + </progressbar> + + <textarea name="time" from="basetextarea"> +- <area>918,89,185,14</area> ++ <area>918,77,185,14</area> + <font>basesupersmallyellow</font> + </textarea> + diff --git a/abs/core/linhes-theme/music-ui.xml.patch b/abs/core/linhes-theme/music-ui.xml.patch new file mode 100644 index 0000000..6d01256 --- /dev/null +++ b/abs/core/linhes-theme/music-ui.xml.patch @@ -0,0 +1,704 @@ +--- music-ui.xml.orig 2016-12-13 20:47:17.067929339 +0000 ++++ music-ui.xml 2017-01-12 02:19:35.520508931 +0000 +@@ -6,7 +6,7 @@ + <area>0,0,1280,720</area> + + <textarea name="heading" from="base_heading"> +- <value>Current Play List View</value> ++ <value>Current Playlist View</value> + </textarea> + + <shape name="play-list-backdrop" from="base_backdrop"> +@@ -41,7 +41,7 @@ + <area>28,44,1224,406</area> + <multiline>yes</multiline> + <align>allcenter</align> +- <value>You haven't selected any tracks to play</value> ++ <value>Press MENU to add tracks to Current Playlist</value> + </textarea> + + <!-- current playlist button list --> +@@ -92,7 +92,7 @@ + </state> + </statetype> + <textarea name="tracknum"> +- <area>133,0,52,30</area> ++ <area>118,0,70,30</area> + <font>basesmall</font> + <align>right,vcenter</align> + <template>%1 -</template> +@@ -107,7 +107,7 @@ + <align>left,vcenter</align> + </textarea> + <textarea name="length" from="title"> +- <area>1139,0,70,30</area> ++ <area>1129,0,80,30</area> + <align>right,vcenter</align> + </textarea> + </state> +@@ -121,7 +121,7 @@ + <state name="playing"> + <area>0,0,100%,100%</area> + <textarea name="playing" from="basetextarea"> +- <area>84,0,70,64</area> ++ <area>74,0,70,64</area> + <font>basesupersmallgreen</font> + <cutdown>no</cutdown> + <align>allcenter</align> +@@ -132,7 +132,7 @@ + <state name="paused"> + <area>0,0,100%,100%</area> + <textarea name="paused" from="basetextarea"> +- <area>84,0,70,64</area> ++ <area>74,0,70,64</area> + <font>basesupersmallyellow</font> + <cutdown>no</cutdown> + <align>allcenter</align> +@@ -143,7 +143,7 @@ + <state name="stopped"> + <area>0,0,100%,100%</area> + <textarea name="stopped" from="basetextarea"> +- <area>84,0,70,64</area> ++ <area>74,0,70,64</area> + <font>basesupersmallred</font> + <cutdown>no</cutdown> + <align>allcenter</align> +@@ -153,40 +153,45 @@ + </state> + </statetype> + <textarea name="tracknum"> +- <area>159,2,52,24</area> ++ <area>118,1,70,24</area> + <font>basesmallyellow</font> +- <align>right,vcenter</align> ++ <align>right,top</align> + <template>%1 -</template> + </textarea> + <textarea name="title"> +- <area>219,2,540,24</area> ++ <area>193,1,566,24</area> ++ <align>left,top</align> + <font>basesmallyellow</font> ++ <scroll direction="left" startdelay="1"/> + </textarea> + <textarea name="artist" from="title"> +- <area>774,2,350,24</area> ++ <area>774,1,350,24</area> ++ <scroll direction="left" startdelay="1"/> + </textarea> +- <textarea name="length" from="title"> +- <area>1139,2,70,24</area> ++ <textarea name="length"> ++ <area>1129,1,80,24</area> + <align>right,vcenter</align> ++ <font>basesmallyellow</font> + </textarea> + <textarea name="album"> +- <area>229,0,540,64</area> +- <font>baseextrasmallyellow</font> ++ <area>193,24,566,20</area> ++ <font>baseextrasmallblue</font> + <align>left,vcenter</align> + </textarea> + <textarea name="genre" from="album"> +- <area>784,0,340,64</area> ++ <area>774,24,350,20</area> + </textarea> + <statetype name="ratingstate" from="base_rating_state"> +- <position>219,40</position> ++ <position>193,40</position> + </statetype> + <textarea name="lastplayed" from="album"> +- <area>774,43,250,20</area> ++ <area>774,43,260,20</area> ++ <font>baseextrasmall</font> + </textarea> +- <textarea name="playcount" from="album"> ++ <textarea name="playcount" from="lastplayed"> + <area>1039,43,170,20</area> + <align>right,vcenter</align> +- <template>Played %1 times</template> ++ <template>Played: %1</template> + </textarea> + </state> + <state name="selectedinactive" from="selectedactive"> +@@ -217,7 +222,7 @@ + <area>0,0,1280,720</area> + + <textarea name="heading" from="base_heading"> +- <value>Play List Editor Tree View</value> ++ <value>Playlist Editor Tree View</value> + </textarea> + + <shape name="breadcrumbs-backdrop" from="base_backdrop"> +@@ -274,6 +279,7 @@ + <area>36,39,993,30</area> + <font>basesmallyellow</font> + <align>left,vcenter</align> ++ <scroll direction="horizontal" startdelay="1" rate="80"/> + </textarea> + + <!-- optional - shows current position in grid eg '1 of 123' --> +@@ -355,7 +361,7 @@ + <area>0,0,1280,720</area> + + <textarea name="heading" from="base_heading"> +- <value>Play List Editor Gallery View</value> ++ <value>Playlist Editor Gallery View</value> + </textarea> + + <shape name="breadcrumbs-backdrop" from="base_backdrop"> +@@ -404,6 +410,7 @@ + <area>36,39,993,30</area> + <font>basesmallyellow</font> + <align>left,vcenter</align> ++ <scroll direction="horizontal" startdelay="1" rate="80"/> + </textarea> + + <!-- optional - shows current position in grid eg '1 of 123' --> +@@ -435,7 +442,8 @@ + </group> + <imagetype name="buttonimage"> + <area>8,8,120,120</area> +- <filename>mythmusic/mm_nothumb.png</filename> ++ <filename>mythmusic/mm_category.png</filename> ++ <alpha>100</alpha> + </imagetype> + <statetype name="nodetype"> + <position>8,8</position> +@@ -443,73 +451,85 @@ + <state name="alltracks"> + <imagetype name="alltracks"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="genres"> + <imagetype name="genres"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="albums"> + <imagetype name="albums"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="artists"> + <imagetype name="artists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="compartists"> + <imagetype name="compartists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="ratings"> + <imagetype name="ratings"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="years"> + <imagetype name="years"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="compilations"> + <imagetype name="compilations"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="cd"> + <imagetype name="cd"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="directory"> + <imagetype name="directory"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="playlists"> + <imagetype name="playlists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + <state name="smartplaylists"> + <imagetype name="smartplaylists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> ++ <alpha>100</alpha> + </imagetype> + </state> + </statetype> +@@ -547,7 +567,7 @@ + <area>0,0,100%,100%</area> + <type>roundbox</type> + <fill color="#101017" alpha="255" /> +- <line color="#ffffff" alpha="45" width="4" /> ++ <line color="#0072bc" alpha="45" width="4" /> + <cornerradius>8</cornerradius> + </shape> + <shape name="select_bar_top_highlight_line"> +@@ -555,9 +575,9 @@ + <type>box</type> + <fill style="gradient"> + <gradient direction="horizontal" alpha="0"> +- <stop position="0" color="#ffffff" /> +- <stop position="50" color="#ffffff" alpha="180" /> +- <stop position="100" color="#ffffff" /> ++ <stop position="0" color="#0072bc" /> ++ <stop position="50" color="#0072bc" alpha="180" /> ++ <stop position="100" color="#0072bc" /> + </gradient> + </fill> + </shape> +@@ -569,9 +589,9 @@ + <type>box</type> + <fill style="gradient"> + <gradient alpha="0" direction="vertical"> +- <stop position="0" color="#ffffff" /> +- <stop position="50" color="#ffffff" alpha="220" /> +- <stop position="100" color="#ffffff" /> ++ <stop position="0" color="#0072bc" /> ++ <stop position="50" color="#0072bc" alpha="220" /> ++ <stop position="100" color="#0072bc" /> + </gradient> + </fill> + </shape> +@@ -580,7 +600,7 @@ + </shape> + <imagetype name="buttonimage"> + <area>8,8,120,120</area> +- <filename>mythmusic/mm_nothumb.png</filename> ++ <filename>mythmusic/mm_category.png</filename> + </imagetype> + <statetype name="nodetype"> + <position>8,8</position> +@@ -588,73 +608,73 @@ + <state name="alltracks"> + <imagetype name="alltracks"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="genres"> + <imagetype name="genres"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="albums"> + <imagetype name="albums"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="artists"> + <imagetype name="artists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="compartists"> + <imagetype name="compartists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="ratings"> + <imagetype name="ratings"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="years"> + <imagetype name="years"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="compilations"> + <imagetype name="compilations"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="cd"> + <imagetype name="cd"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="directory"> + <imagetype name="directory"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="playlists"> + <imagetype name="playlists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + <state name="smartplaylists"> + <imagetype name="smartplaylists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + </imagetype> + </state> + </statetype> +@@ -681,22 +701,50 @@ + <area>5,1,-5,-3</area> + <align>bottom,hcenter</align> + <minsize shrink="short" vanish="true">5,5</minsize> +- <font>baseextrasmall</font> ++ <font>baseextrasmallyellow</font> + <multiline>yes</multiline> + </textarea> + </group> + </state> +- <state name="selectedinactive"> +- <group name="select_bar" from="base_button_select_bar_disabled_group"> +- <area>0,0,136,136</area> +- <shape name="select_bar"> +- <fill color="#333333" alpha="255" /> +- <cornerradius>8</cornerradius> +- </shape> +- </group> ++ <state name="selectedinactive" from="selectedactive"> ++ <shape name="select_bar"> ++ <area>0,0,100%,100%</area> ++ <type>roundbox</type> ++ <fill color="#101017" alpha="255" /> ++ <line color="#ffffff" alpha="45" width="4" /> ++ <cornerradius>8</cornerradius> ++ </shape> ++ <shape name="select_bar_top_highlight_line"> ++ <area>8,2,120,4</area> ++ <type>box</type> ++ <fill style="gradient"> ++ <gradient direction="horizontal" alpha="0"> ++ <stop position="0" color="#ffffff" /> ++ <stop position="50" color="#ffffff" alpha="180" /> ++ <stop position="100" color="#ffffff" /> ++ </gradient> ++ </fill> ++ </shape> ++ <shape name="select_bar_bottom_highlight_line" from="select_bar_top_highlight_line"> ++ <area>8,130,120,4</area> ++ </shape> ++ <shape name="select_bar_left_highlight_line"> ++ <area>2,8,4,120</area> ++ <type>box</type> ++ <fill style="gradient"> ++ <gradient alpha="0" direction="vertical"> ++ <stop position="0" color="#ffffff" /> ++ <stop position="50" color="#ffffff" alpha="220" /> ++ <stop position="100" color="#ffffff" /> ++ </gradient> ++ </fill> ++ </shape> ++ <shape name="select_bar_right_highlight_line" from="select_bar_left_highlight_line"> ++ <area>130,8,4,120</area> ++ </shape> + <imagetype name="buttonimage"> + <area>8,8,120,120</area> +- <filename>mythmusic/mm_nothumb.png</filename> ++ <filename>mythmusic/mm_category.png</filename> + <alpha>100</alpha> + </imagetype> + <statetype name="nodetype"> +@@ -705,94 +753,84 @@ + <state name="alltracks"> + <imagetype name="alltracks"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="genres"> + <imagetype name="genres"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="albums"> + <imagetype name="albums"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="artists"> + <imagetype name="artists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="compartists"> + <imagetype name="compartists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="ratings"> + <imagetype name="ratings"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="years"> + <imagetype name="years"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="compilations"> + <imagetype name="compilations"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="cd"> + <imagetype name="cd"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="directory"> + <imagetype name="directory"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="playlists"> + <imagetype name="playlists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> + <state name="smartplaylists"> + <imagetype name="smartplaylists"> + <area>0,0,120,120</area> +- <filename>mythmusic/mm_category.png</filename> +- <alpha>100</alpha> +- </imagetype> +- </state> +- </statetype> +- <statetype name="buttoncheck"> +- <position>8,8</position> +- <showempty>yes</showempty> +- <state type="full"> +- <imagetype name="marked"> +- <filename>mythmusic/playlist_yes.png</filename> ++ <filename>mythmusic/mm_nothumb.png</filename> + <alpha>100</alpha> + </imagetype> + </state> +@@ -813,7 +851,6 @@ + <minsize shrink="short" vanish="true">5,5</minsize> + <font>baseextrasmall</font> + <multiline>yes</multiline> +- <alpha>100</alpha> + </textarea> + </group> + </state> +@@ -1909,6 +1946,122 @@ + + </window> + ++ <window name="trackslyricsview"> ++ <area>0,0,1280,720</area> ++ ++ <group name="heading-backdrop" from="base_heading_group" /> ++ ++ <textarea name="heading" from="base_heading"> ++ <value>Track Lyrics View</value> ++ </textarea> ++ ++ <shape name="lyrics-backdrop" from="base_backdrop"> ++ <area>20,36,1240,453</area> ++ </shape> ++ ++ <shape name="lyrics-backdrop-line" from="base_backdrop_line"> ++ <area>21,37,1238,451</area> ++ </shape> ++ ++ <shape name="lyrics-top-line" from="base_highlight_line"> ++ <area>21,38,1238,2</area> ++ </shape> ++ ++ <shape name="lyrics-bottom-line" from="base_highlight_line"> ++ <area>21,486,1238,2</area> ++ </shape> ++ ++ <shape name="lyrics-list-left-line" from="base_highlight_vertical_line"> ++ <area>22,40,2,446</area> ++ </shape> ++ ++ <shape name="lyrics-list-right-line" from="base_highlight_vertical_line"> ++ <area>1256,40,2,446</area> ++ </shape> ++ ++ <shape name="lyrics-list-arrows-backdrop" from="base_arrows_backdrop"> ++ <area>1207,490,50,11</area> ++ </shape> ++ ++ <buttonlist name="lyrics_list" from="base_list"> ++ <area>28,44,1224,440</area> ++ <searchposition>-1,466</searchposition> ++ <buttonarea>0,0,1224,440</buttonarea> ++ <statetype name="buttonitem"> ++ <state name="active"> ++ <area>0,0,100%,30</area> ++ <textarea name="buttontext"> ++ <area>0,0,100%,100%</area> ++ <align>top,hcenter</align> ++ <font>basesmall</font> ++ </textarea> ++ </state> ++ <state name="selectedactive" from="active"> ++ <group name="select_bar" from="base_select_bar_selectedactive_group"> ++ <area>0,0,100%,100%</area> ++ </group> ++ <textarea name="buttontext"> ++ <font>basesmallyellow</font> ++ </textarea> ++ </state> ++ <state name="selectedinactive" from="selectedactive"> ++ <group name="select_bar" from="base_select_bar_selectedinactive_group"> ++ <area>0,0,100%,100%</area> ++ </group> ++ </state> ++ </statetype> ++ ++ <statetype name="upscrollarrow"> ++ <position>1186,448</position> ++ </statetype> ++ ++ <statetype name="downscrollarrow"> ++ <position>1206,448</position> ++ </statetype> ++ </buttonlist> ++ ++ <statetype name="loading_state"> ++ <position>339,153</position> ++ <state name="off"></state> ++ <state name="on"> ++ <shape name="boxshape" from="base_popup_backdrop"> ++ <area>0,0,602,144</area> ++ </shape> ++ <shape name="boxshape-line" from="base_backdrop_line"> ++ <area>1,1,600,142</area> ++ </shape> ++ <shape name="busy-dialog-top-line" from="base_highlight_line"> ++ <area>2,2,598,2</area> ++ </shape> ++ <shape name="busy-dialog-bottom-line" from="base_highlight_line"> ++ <area>2,140,598,2</area> ++ </shape> ++ <shape name="busy-dialog-left-line" from="base_highlight_vertical_line"> ++ <area>2,4,2,138</area> ++ </shape> ++ <shape name="busy-dialog-right-line" from="base_highlight_vertical_line"> ++ <area>598,4,2,138</area> ++ </shape> ++ <imagetype name="loadinganimation"> ++ <position>33,65</position> ++ <filepattern low="1" high="60" cycle="reverse">images/busy/busy%1.png</filepattern> ++ <delay>12</delay> ++ </imagetype> ++ </state> ++ </statetype> ++ ++ <textarea name="status_text" from="basetextarea"> ++ <area>20,36,1240,453</area> ++ <font>basemediumyellow</font> ++ <align>allcenter</align> ++ </textarea> ++ ++ <group name="trackinfopanel" from="base_info_panel"> ++ <area>0,506,1280,240</area> ++ </group> ++ ++ </window> ++ + <window name="editmetadata"> + <area>0,0,1280,720</area> + +@@ -3492,7 +3645,7 @@ + </section> + </animation> + +- <shape name="cd-rip-backdrop" from="base_popup_backdrop"> ++ <shape name="cd-rip-backdrop" from="base_popup_backdrop"> + <area>0,0,800,360</area> + </shape> + diff --git a/abs/core/linhes-theme/osd.xml.patch b/abs/core/linhes-theme/osd.xml.patch index 3eabbfc..a5629d4 100644 --- a/abs/core/linhes-theme/osd.xml.patch +++ b/abs/core/linhes-theme/osd.xml.patch @@ -1,5 +1,5 @@ --- osd.xml.orig 2016-11-16 18:00:59.736588734 +0000 -+++ osd.xml 2016-11-17 19:29:17.370920531 +0000 ++++ osd.xml 2017-01-13 18:57:07.721509072 +0000 @@ -7,13 +7,13 @@ <window name="osd_debug"> <area>0,0,1280,720</area> @@ -274,17 +274,17 @@ - <area>90,658,1100,24</area> + <textarea name="value"> + <area>90,657,1100,24</area> - <font>small</font> - <align>allcenter</align> -- <template>%DESCRIPTION% -- %(|REMAININGTIME|)%%(|BEHINDTIME|)%%VALUE%%UNITS%</template> ++ <font>small</font> ++ <align>allcenter</align> + <template>%VALUE%%UNITS%</template> + </textarea> + + <textarea name="playedtime" depends="!value"> + <area>90,657,1100,24</area> -+ <font>small</font> -+ <align>allcenter</align> + <font>small</font> + <align>allcenter</align> +- <template>%DESCRIPTION% +- %(|REMAININGTIME|)%%(|BEHINDTIME|)%%VALUE%%UNITS%</template> + <template>%PLAYEDTIME% of %TOTALTIME% + %(|REMAININGTIME| remains)%%(|BEHINDTIME| behind)%</template> </textarea> @@ -457,21 +457,21 @@ <align>vcenter</align> - <template>%TIMEDATE% : %LENMINS%</template> + <template>%TIMEDATE% %LONGREPEAT%</template> - </textarea> - -- <textarea name="longrepeat"> ++ </textarea> ++ + <!--use channum to detect if in videos--> + <textarea name="lenminsFilesize" depends="channum"> - <font>mediumsmall</font> -- <area>771,453,435,22</area> ++ <font>mediumsmall</font> + <area>871,453,335,22</area> + <align>right,vcenter</align> + <template>%LENMINS% (%FILESIZE_STR%)</template> -+ </textarea> -+ + </textarea> + +- <textarea name="longrepeat"> + <!--use channum to detect if in videos--> + <textarea name="lenmins" depends="!channum"> -+ <font>mediumsmall</font> + <font>mediumsmall</font> +- <area>771,453,435,22</area> + <area>871,453,335,22</area> <align>right,vcenter</align> - <template>%LONGREPEAT% Size: %FILESIZE_STR%</template> @@ -751,3 +751,66 @@ </fontdef> <shape name="mythpopupbox-backdrop"> +@@ -1810,7 +1836,7 @@ + </shape> + + <shape name="message-area-seperator-line"> +- <area>362,328,556,2</area> ++ <area>362,290,556,2</area> + <type>box</type> + <fill style="gradient"> + <gradient direction="horizontal" alpha="45"> +@@ -1822,21 +1848,21 @@ + </shape> + + <shape name="mythpopup-box-arrows-backdrop"> +- <area>342,603,50,14</area> ++ <area>888,603,50,14</area> + <type>roundbox</type> +- <fill color="#000000" alpha="200" /> ++ <fill color="#000000" alpha="140" /> + <cornerradius>90</cornerradius> + </shape> + + <textarea name="messagearea"> +- <area>355,126,570,196</area> +- <font>smallyellow</font> ++ <area>355,126,570,158</area> ++ <font>small</font> + <multiline>yes</multiline> + <align>allcenter</align> + </textarea> + + <buttonlist name="list"> +- <area>347,332,586,264</area> ++ <area>347,294,586,302</area> + <layout>vertical</layout> + <spacing>4</spacing> + <showarrow>yes</showarrow> +@@ -1922,7 +1948,7 @@ + </fill> + </shape> + <textarea name="buttontext"> +- <font>small</font> ++ <font>smallyellow</font> + </textarea> + <imagetype name="buttonarrow"> + <alpha>255</alpha> +@@ -1964,7 +1990,7 @@ + </state> + </statetype> + <statetype name="upscrollarrow"> +- <position>2,274</position> ++ <position>548,312</position> + <state type="off"> + <imagetype name="upon"> + <filename>images/osd/lists_up_arrow.png</filename> +@@ -1978,7 +2004,7 @@ + </state> + </statetype> + <statetype name="downscrollarrow"> +- <position>22,274</position> ++ <position>568,312</position> + <state type="off"> + <imagetype name="dnon"> + <filename>images/osd/lists_down_arrow.png</filename> diff --git a/abs/core/linhes-theme/preview.png b/abs/core/linhes-theme/preview.png Binary files differindex 7c1efdb..7c1efdb 100755..100644 --- a/abs/core/linhes-theme/preview.png +++ b/abs/core/linhes-theme/preview.png diff --git a/abs/core/linhes-theme/question.png b/abs/core/linhes-theme/question.png Binary files differindex 1eda678..1eda678 100755..100644 --- a/abs/core/linhes-theme/question.png +++ b/abs/core/linhes-theme/question.png diff --git a/abs/core/linhes-theme/recordings-ui.xml.patch b/abs/core/linhes-theme/recordings-ui.xml.patch index 4c8f8c1..77969dc 100644 --- a/abs/core/linhes-theme/recordings-ui.xml.patch +++ b/abs/core/linhes-theme/recordings-ui.xml.patch @@ -1,5 +1,5 @@ --- recordings-ui.xml.orig 2016-11-16 20:12:29.390254787 +0000 -+++ recordings-ui.xml 2016-11-16 20:12:03.436933524 +0000 ++++ recordings-ui.xml 2016-12-23 02:34:31.313887659 +0000 @@ -105,19 +105,11 @@ </shape> @@ -30,7 +30,7 @@ <multiline>yes</multiline> </textarea> </state> -@@ -232,11 +225,12 @@ +@@ -232,16 +225,16 @@ <area>0,0,898,64</area> <textarea name="titlesubtitle" from="base_text_font_state_small"> <area>8,2,694,24</area> @@ -39,12 +39,19 @@ <align>vcenter</align> </textarea> <textarea name="shortstartdate" from="titlesubtitle"> - <area>720,3,80,24</area> -+ <font state="normal">basesmall</font> +- <area>720,3,80,24</area> ++ <area>720,2,80,24</area> <align>right,vcenter</align> </textarea> <textarea name="filesize_str" from="base_text_font_state_extrasmall"> -@@ -579,20 +573,20 @@ +- <area>818,7,72,18</area> +- <font state="normal">baseextrasmall</font> ++ <area>818,2,72,24</area> ++ <font state="normal">baseextrasmallyellow</font> + <cutdown>no</cutdown> + <align>right,vcenter</align> + </textarea> +@@ -579,20 +572,20 @@ <align>allcenter</align> </textarea> <textarea name="s00e00" from="base_text_font_state_extrasmall"> @@ -68,7 +75,7 @@ <font state="normal">baseextrasmall</font> <align>right,vcenter</align> </textarea> -@@ -606,57 +600,48 @@ +@@ -606,57 +599,48 @@ </statetype> </buttonlist> @@ -138,7 +145,7 @@ <font>basesupersmallyellow</font> <align>allcenter</align> <template>Disk space: %1</template> -@@ -688,7 +673,7 @@ +@@ -688,7 +672,7 @@ <textarea name="norecordings"> <area>350,87,906,351</area> <font>basemedium</font> diff --git a/abs/core/linhes-theme/schedule-ui.xml.patch b/abs/core/linhes-theme/schedule-ui.xml.patch index 930c26f..0ed5ba4 100644 --- a/abs/core/linhes-theme/schedule-ui.xml.patch +++ b/abs/core/linhes-theme/schedule-ui.xml.patch @@ -1,5 +1,5 @@ ---- schedule-ui.xml.orig 2014-10-26 18:47:27.740659484 +0000 -+++ schedule-ui.xml 2014-10-26 18:45:31.642195458 +0000 +--- schedule-ui.xml.orig 2017-01-12 02:24:06.812272686 +0000 ++++ schedule-ui.xml 2017-01-12 02:24:53.802894035 +0000 @@ -126,7 +126,7 @@ <conflictingcolor>#ff6600</conflictingcolor> <cutdown>no</cutdown> @@ -9,3 +9,42 @@ <recordstatus type="SingleRecord" image="images/gg-rs-single.png"></recordstatus> <recordstatus type="TimeslotRecord" image="images/gg-rs-timeslot.png"></recordstatus> <recordstatus type="ChannelRecord" image="images/gg-rs-channel.png"></recordstatus> +@@ -1437,10 +1437,10 @@ + </state> + </statetype> + <statetype name="upscrollarrow"> +- <position>0,350</position> ++ <position>550,350</position> + </statetype> + <statetype name="downscrollarrow"> +- <position>20,350</position> ++ <position>570,350</position> + </statetype> + </buttonlist> + +@@ -1544,10 +1544,10 @@ + </state> + </statetype> + <statetype name="upscrollarrow"> +- <position>0,350</position> ++ <position>550,350</position> + </statetype> + <statetype name="downscrollarrow"> +- <position>20,350</position> ++ <position>570,350</position> + </statetype> + </buttonlist> + +@@ -3098,10 +3098,10 @@ + </state> + </statetype> + <statetype name="upscrollarrow"> +- <position>0,350</position> ++ <position>550,350</position> + </statetype> + <statetype name="downscrollarrow"> +- <position>20,350</position> ++ <position>570,350</position> + </statetype> + </buttonlist> + diff --git a/abs/core/linhes-theme/status-ui.xml.patch b/abs/core/linhes-theme/status-ui.xml.patch new file mode 100644 index 0000000..9c26d77 --- /dev/null +++ b/abs/core/linhes-theme/status-ui.xml.patch @@ -0,0 +1,53 @@ +--- status-ui.xml.orig 2017-01-12 02:25:29.328323754 +0000 ++++ status-ui.xml 2017-01-12 02:19:35.527174739 +0000 +@@ -212,9 +212,9 @@ + + <textarea name="title"> + <area>4,4,552,64</area> +- <font>basemedium</font> ++ <font>basemediumyellow</font> + <align>allcenter</align> +- <value>MythTV is in standby mode!</value> ++ <value>MythTV is in Standby Mode</value> + </textarea> + + <statetype name="backendstatus"> +@@ -230,7 +230,7 @@ + <textarea name="status"> + <area>4,248,552,64</area> + <font>basemediumgreen</font> +- <value>Backend is idle!</value> ++ <value>Backend is Idle</value> + <align>allcenter</align> + <multiline>true</multiline> + </textarea> +@@ -241,16 +241,16 @@ + </shape> + <textarea name="status"> + <font>basemediumred</font> +- <value>Backend is recording!</value> ++ <value>Backend is Recording</value> + </textarea> + </state> + <state name="shuttingdown" from="idle"> + <shape name="icon"> +- <fill color="#d9d900" /> ++ <fill color="#d97616" /> + </shape> + <textarea name="status"> +- <font>basemediumyellow</font> +- <value>Shutting Down!</value> ++ <font>basemediumorange</font> ++ <value>MythTV is Shutting Down</value> + </textarea> + </state> + <state name="offline" from="idle"> +@@ -259,7 +259,7 @@ + </shape> + <textarea name="status"> + <font>basemediumred</font> +- <value>Backend is offline!</value> ++ <value>Backend is Offline</value> + </textarea> + </state> + </statetype> diff --git a/abs/core/linhes-theme/stream-ui.xml.patch b/abs/core/linhes-theme/stream-ui.xml.patch new file mode 100644 index 0000000..e555b2b --- /dev/null +++ b/abs/core/linhes-theme/stream-ui.xml.patch @@ -0,0 +1,568 @@ +--- stream-ui.xml.orig 2016-12-13 20:49:12.313146317 +0000 ++++ stream-ui.xml 2016-12-13 20:34:54.363217804 +0000 +@@ -41,7 +41,7 @@ + <area>28,40,1224,276</area> + <multiline>yes</multiline> + <align>allcenter</align> +- <value>Press MENU to add some radio streams to play.</value> ++ <value>Press MENU to add radio streams to play</value> + </textarea> + + <buttonlist name="streamlist" from="base_list"> +@@ -90,21 +90,24 @@ + </textarea> + </state> + </statetype> +- <textarea name="station" from="buttontext"> ++ <textarea name="broadcaster" from="buttontext"> + <area>153,0,200,30</area> + <align>left,vcenter</align> ++ <font>basesmall</font> + </textarea> +- <textarea name="channel" from="buttontext"> +- <area>363,0,370,30</area> +- <align>left,vcenter</align> ++ <textarea name="channel" from="broadcaster"> ++ <area>363,0,470,30</area> + </textarea> +- <textarea name="genre" from="buttontext"> +- <area>743,0,462,30</area> ++ <textarea name="genre" from="broadcaster"> ++ <area>843,0,362,30</area> + <align>right,vcenter</align> + </textarea> + </state> + <state name="selectedactive"> + <area>0,0,100%,64</area> ++ <group name="select_bar" from="base_select_bar_selectedactive_group"> ++ <area>0,0,100%,100%</area> ++ </group> + <imagetype name="buttonimage"> + <area>15,3,58,58</area> + <filename>mm_icecast.png</filename> +@@ -144,23 +147,43 @@ + </textarea> + </state> + </statetype> +- <textarea name="station" from="buttontext"> +- <area>183,0,200,64</area> ++ <textarea name="broadcaster" from="buttontext"> ++ <area>183,1,200,30</area> + <align>left,vcenter</align> + </textarea> +- <textarea name="channel" from="buttontext"> +- <area>393,0,356,64</area> +- <align>left,vcenter</align> ++ <textarea name="channel" from="broadcaster"> ++ <area>393,1,456,30</area> + </textarea> +- <textarea name="genre" from="buttontext"> +- <area>759,0,450,64</area> ++ <textarea name="genre" from="broadcaster"> ++ <area>859,1,350,30</area> + <align>right,vcenter</align> + </textarea> ++ <textarea name="description" from="broadcaster"> ++ <area>203,32,1006,30</area> ++ <font>basesmallerblue</font> ++ <multiline>no</multiline> ++ <scroll direction="left" startdelay="1"/> ++ </textarea> + </state> + <state name="selectedinactive" from="selectedactive"> + <group name="select_bar" from="base_select_bar_selectedinactive_group"> + <area>0,0,100%,100%</area> + </group> ++ <textarea name="broadcaster"> ++ <font>basesmall</font> ++ </textarea> ++ <textarea name="channel"> ++ <font>basesmall</font> ++ </textarea> ++ <textarea name="genre"> ++ <font>basesmall</font> ++ </textarea> ++ <textarea name="description" from="broadcaster"> ++ <area>203,32,1006,30</area> ++ <font>basesmallerblue</font> ++ <multiline>no</multiline> ++ <cutdown>yes</cutdown> ++ </textarea> + </state> + </statetype> + <statetype name="upscrollarrow"> +@@ -263,6 +286,18 @@ + <group name="select_bar" from="base_select_bar_selectedinactive_group"> + <area>0,0,100%,100%</area> + </group> ++ <textarea name="tracknum"> ++ <font>basesmall</font> ++ </textarea> ++ <textarea name="title"> ++ <font>basesmall</font> ++ </textarea> ++ <textarea name="artist"> ++ <font>basesmall</font> ++ </textarea> ++ <textarea name="length"> ++ <font>basesmall</font> ++ </textarea> + </state> + </statetype> + <statetype name="upscrollarrow"> +@@ -332,12 +367,12 @@ + + <textarea name="channel" from="basetextarea"> + <area>187,86,906,33</area> +- <font>basesmallblue</font> +- <template>%STATION% - %CHANNEL%</template> ++ <font>basesmall</font> ++ <template>%BROADCASTER% - %CHANNEL%</template> + </textarea> + + <textarea name="filename" from="basetextarea"> +- <font>basesmall</font> ++ <font>basesmallblue</font> + <area>187,119,906,33</area> + </textarea> + +@@ -359,22 +394,6 @@ + <align>allcenter</align> + </textarea> + +- <button name="prev" from="base_prev_button"> +- <position>584,158</position> +- </button> +- +- <button name="play" from="base_play_button"> +- <position>618,158</position> +- </button> +- +- <button name="stop" from="base_stop_button"> +- <position>646,158</position> +- </button> +- +- <button name="next" from="base_next_button"> +- <position>676,158</position> +- </button> +- + <statetype name="mutestate" from="base_mute_state"> + <position>57,163</position> + </statetype> +@@ -384,11 +403,11 @@ + </textarea> + + <progressbar name="bufferprogress" from="baseprogressbar"> +- <position>372,180</position> ++ <position>372,170</position> + </progressbar> + + <textarea name="bufferstatus" from="basetextarea"> +- <area>918,179,175,14</area> ++ <area>918,167,175,14</area> + <font>basesupersmallyellow</font> + </textarea> + +@@ -408,6 +427,7 @@ + + <shape name="edit-stream-metadata-backdrop-line" from="base_backdrop_line"> + <area>116,37,1048,506</area> ++ <area>116,37,1048,566</area> + </shape> + + <shape name="edit-stream-metadata-top-line" from="base_highlight_line"> +@@ -415,23 +435,25 @@ + </shape> + + <shape name="edit-stream-metadata-bottom-line" from="base_highlight_line"> +- <area>117,540,1046,2</area> ++ <area>117,600,1046,2</area> + </shape> + + <shape name="edit-stream-metadata-left-line" from="base_highlight_vertical_line"> +- <area>117,40,2,500</area> ++ <area>117,40,2,560</area> + </shape> + + <shape name="edit-stream-metadata-right-line" from="base_highlight_vertical_line"> +- <area>1161,40,2,500</area> ++ <area>1161,40,2,560</area> + </shape> + + <shape name="edit-stream-metadata-bottom-backdrop-line" from="base_backdrop_line"> + <area>116,547,1048,137</area> ++ <area>116,619,1048,65</area> + </shape> + + <shape name="edit-stream-metadata-bottom-top-line" from="base_highlight_line"> + <area>117,548,1046,2</area> ++ <area>117,620,1046,2</area> + </shape> + + <shape name="edit-stream-metadata-bottom-bottom-line" from="base_highlight_line"> +@@ -439,85 +461,137 @@ + </shape> + + <shape name="edit-stream-metadata-bottom-left-line" from="base_highlight_vertical_line"> +- <area>117,550,2,131</area> ++ <area>117,622,2,59</area> + </shape> + + <shape name="edit-stream-metadata-bottom-right-line" from="base_highlight_vertical_line"> +- <area>1161,550,2,131</area> +- </shape> +- +- <shape name="edit-stream-metadata-bottom-seperator-first-line" from="base_line"> +- <area>138,620,1004,2</area> ++ <area>1161,622,2,59</area> + </shape> + +- <textarea name="stationlabel" > +- <area>119,68,214,40</area> ++ <textarea name="broadcasterlabel" > ++ <area>119,54,140,40</area> + <font>basemedium</font> + <align>right,vcenter</align> +- <value>Station:</value> ++ <value>Broadcaster:</value> + </textarea> + +- <textedit name="stationedit" from="base_textedit"> +- <area>343,68,800,40</area> ++ <textedit name="broadcasteredit" from="base_textedit"> ++ <area>269,54,370,40</area> + </textedit> + +- <button name="searchbutton" from="base_button"> +- <area>465,136,350,40</area> +- <value>Search for Stream</value> +- </button> +- +- <textarea name="channellabel" from="stationlabel"> +- <position>119,204</position> ++ <textarea name="channellabel" from="broadcasterlabel"> ++ <area>649,54,120,40</area> + <value>Channel:</value> + </textarea> + +- <textedit name="channeledit" from="stationedit"> +- <position>343,204</position> ++ <textedit name="channeledit" from="broadcasteredit"> ++ <position>779,54</position> ++ </textedit> ++ ++ <textarea name="descriptionlabel" from="broadcasterlabel"> ++ <area>119,109,140,40</area> ++ <value>Description:</value> ++ </textarea> ++ ++ <textedit name="descriptionedit" from="broadcasteredit"> ++ <area>269,109,880,40</area> + </textedit> + +- <textarea name="urllabel" from="stationlabel"> +- <position>119,271</position> +- <value>URL:</value> ++ <textarea name="url1label" from="descriptionlabel"> ++ <position>119,164</position> ++ <value>URL1:</value> + </textarea> ++ <textedit name="url1edit" from="descriptionedit"> ++ <position>269,164</position> ++ </textedit> ++ ++ <textarea name="url2label" from="descriptionlabel"> ++ <position>119,219</position> ++ <value>URL2:</value> ++ </textarea> ++ <textedit name="url2edit" from="descriptionedit"> ++ <position>269,219</position> ++ </textedit> ++ ++ <textarea name="url3label" from="descriptionlabel"> ++ <position>119,274</position> ++ <value>URL3:</value> ++ </textarea> ++ <textedit name="url3edit" from="descriptionedit"> ++ <position>269,274</position> ++ </textedit> ++ ++ <textarea name="url4label" from="descriptionlabel"> ++ <position>119,329</position> ++ <value>URL4:</value> ++ </textarea> ++ <textedit name="url4edit" from="descriptionedit"> ++ <position>269,329</position> ++ </textedit> + +- <textedit name="urledit" from="stationedit"> +- <position>343,271</position> ++ <textarea name="url5label" from="descriptionlabel"> ++ <position>119,384</position> ++ <value>URL5:</value> ++ </textarea> ++ <textedit name="url5edit" from="descriptionedit"> ++ <position>269,384</position> + </textedit> + +- <textarea name="logourllabel" from="stationlabel"> +- <position>119,338</position> ++ <textarea name="logourllabel" from="descriptionlabel"> ++ <position>119,439</position> + <value>Logo URL:</value> + </textarea> + +- <textedit name="logourledit" from="urledit"> +- <position>343,338</position> ++ <textedit name="logourledit" from="descriptionedit"> ++ <position>269,439</position> + </textedit> + +- <textarea name="genrelabel" from="stationlabel"> +- <position>119,405</position> ++ <textarea name="genrelabel" from="broadcasterlabel"> ++ <position>119,494</position> + <value>Genres:</value> + </textarea> + +- <textedit name="genreedit" from="urledit"> +- <position>343,405</position> ++ <textedit name="genreedit" from="broadcasteredit"> ++ <position>269,494</position> + </textedit> + +- <textarea name="formatlabel" from="stationlabel"> +- <position>119,472</position> +- <value>Metadata Format:</value> ++ <textarea name="formatlabel" from="channellabel"> ++ <position>649,494</position> ++ <value>Format:</value> + </textarea> + +- <textedit name="formatedit" from="stationedit"> +- <position>343,472</position> ++ <textedit name="formatedit" from="channeledit"> ++ <position>779,494</position> ++ </textedit> ++ ++ <textarea name="countrylabel" from="broadcasterlabel"> ++ <position>119,549</position> ++ <value>Country:</value> ++ </textarea> ++ <textedit name="countryedit" from="broadcasteredit"> ++ <position>269,549</position> ++ </textedit> ++ ++ <textarea name="languagelabel" from="channellabel"> ++ <position>649,549</position> ++ <value>Language:</value> ++ </textarea> ++ <textedit name="languageedit" from="channeledit"> ++ <position>779,549</position> + </textedit> + + <button name="cancelbutton" from="base_button"> +- <area>233,632,350,40</area> ++ <area>138,632,320,40</area> + <value>Cancel</value> + </button> + ++ <button name="searchbutton" from="base_button"> ++ <area>480,632,320,40</area> ++ <value>Search for Stream...</value> ++ </button> ++ + <button name="savebutton" from="base_button"> +- <area>697,632,350,40</area> ++ <area>822,632,320,40</area> + <value>Save</value> + </button> + +@@ -553,14 +627,6 @@ + <area>1256,40,2,211</area> + </shape> + +- <shape name="stream-search-image-border"> +- <area>37,53,247,185</area> +- <type>roundbox</type> +- <fill color="#000000" alpha="0" /> +- <line color="#AAAAAA" alpha="100" width="2" /> +- <cornerradius>6</cornerradius> +- </shape> +- + <shape name="stream-list-backdrop" from="base_backdrop"> + <area>20,265,1240,420</area> + </shape> +@@ -589,50 +655,65 @@ + <area>1207,685,50,10</area> + </shape> + +- <imagetype name="stream-search-image"> +- <area>41,57,239,177</area> +- <filename>images/stream_search_image.png</filename> +- <mask>images/masks/stream_search_image_mask.png</mask> +- <preserveaspect>no</preserveaspect> +- </imagetype> +- +- <textarea name="stationlabel" > +- <area>214,64,250,40</area> ++ <textarea name="broadcasterlabel" > ++ <area>71,64,150,40</area> + <font>basemedium</font> + <align>right,vcenter</align> +- <value>Station:</value> ++ <value>Broadcaster:</value> + </textarea> + +- <buttonlist name="stationlist" from="base_selector"> +- <area>470,64,376,40</area> ++ <buttonlist name="broadcasterlist" from="base_selector"> ++ <area>231,64,370,40</area> + </buttonlist> + +- <textarea name="genrelabel" from="stationlabel"> +- <position>214,125</position> ++ <textarea name="genrelabel" from="broadcasterlabel"> ++ <area>611,64,150,40</area> + <value>Genre:</value> + </textarea> + +- <buttonlist name="genrelist" from="stationlist"> +- <position>470,125</position> ++ <buttonlist name="genrelist" from="broadcasterlist"> ++ <position>771,64</position> ++ </buttonlist> ++ ++ <textarea name="countrylabel" from="broadcasterlabel"> ++ <position>71,125</position> ++ <value>Country:</value> ++ </textarea> ++ ++ <buttonlist name="countrylist" from="broadcasterlist"> ++ <position>231,125</position> ++ </buttonlist> ++ ++ <textarea name="languagelabel" from="genrelabel"> ++ <position>611,125</position> ++ <value>Language:</value> ++ </textarea> ++ ++ <buttonlist name="languagelist" from="genrelist"> ++ <position>771,125</position> + </buttonlist> + +- <textarea name="channellabel" from="stationlabel"> +- <position>214,186</position> ++ <textarea name="channellabel" from="broadcasterlabel"> ++ <position>71,186</position> + <value>Channel:</value> + </textarea> + + <textedit name="channeledit" from="base_textedit"> +- <area>470,186,376,40</area> ++ <area>231,186,370,40</area> + <textarea name="text"> + <area>18,0,95%,100%</area> + </textarea> + </textedit> + ++ <textarea name="matcheslabel" from="genrelabel" depends="matchestext"> ++ <position>611,186</position> ++ <value>Matches:</value> ++ </textarea> ++ + <textarea name="matchestext"> +- <area>871,40,375,211</area> +- <font>basemediumblue</font> +- <align>allcenter</align> +- <template>Matches: %1</template> ++ <area>771,186,370,40</area> ++ <font>basemedium</font> ++ <align>left,vcenter</align> + </textarea> + + <buttonlist name="streamlist" from="base_list"> +@@ -650,16 +731,16 @@ + <area>15,1,28,28</area> + <filename>mythmusic/mm_icecast.png</filename> + </imagetype> +- <textarea name="station" from="buttontext"> ++ <textarea name="broadcasterchannel" from="buttontext"> + <area>58,0,548,30</area> + <font>basesmall</font> + <align>left,vcenter</align> +- <template>%STATION% - %Channel%</template> + </textarea> +- <textarea name="genre" from="buttontext"> +- <area>621,0,548,30</area> +- <font>basesmall</font> +- <align>left,vcenter</align> ++ <textarea name="genre" from="broadcasterchannel"> ++ <area>621,0,355,30</area> ++ </textarea> ++ <textarea name="language" from="broadcasterchannel"> ++ <area>990,0,177,30</area> + </textarea> + <statetype name="selectedstate"> + <position>1184,2</position> +@@ -681,18 +762,21 @@ + <area>15,4,56,56</area> + <filename>mythmusic/mm_icecast.png</filename> + </imagetype> +- <textarea name="station" from="buttontext"> +- <area>86,0,534,64</area> +- <font>basesmall</font> +- <multiline>yes</multiline> ++ <textarea name="broadcasterchannel" from="buttontext"> ++ <area>86,0,534,30</area> ++ <font>basesmallyellow</font> ++ <multiline>no</multiline> + <align>left,vcenter</align> +- <template>%STATION% - %Channel%</template> + </textarea> +- <textarea name="genre" from="buttontext"> +- <area>635,0,534,64</area> +- <font>basesmall</font> +- <multiline>yes</multiline> +- <align>left,vcenter</align> ++ <textarea name="genre" from="broadcasterchannel"> ++ <area>635,0,534,30</area> ++ </textarea> ++ <textarea name="language" from="broadcasterchannel"> ++ <area>1004,0,177,30</area> ++ </textarea> ++ <textarea name="description" from="broadcasterchannel"> ++ <area>86,30,100%,30</area> ++ <scroll direction="left" startdelay="2"/> + </textarea> + <statetype name="selectedstate"> + <position>1184,19</position> +@@ -708,6 +792,20 @@ + <group name="select_bar" from="base_select_bar_selectedinactive_group"> + <area>0,0,100%,100%</area> + </group> ++ <textarea name="broadcasterchannel"> ++ <font>basesmall</font> ++ </textarea> ++ <textarea name="genre"> ++ <font>basesmall</font> ++ </textarea> ++ <textarea name="language"> ++ <font>basesmall</font> ++ </textarea> ++ <textarea name="description" from="broadcasterchannel"> ++ <area>86,30,100%,30</area> ++ <font>basesmall</font> ++ <cutdown>yes</cutdown> ++ </textarea> + </state> + </statetype> + <statetype name="upscrollarrow"> +@@ -718,7 +816,6 @@ + </statetype> + </buttonlist> + +- + </window> + + </mythuitheme> diff --git a/abs/core/linhes-theme/tux_thoughts.png b/abs/core/linhes-theme/tux_thoughts.png Binary files differindex c36c7a6..c36c7a6 100755..100644 --- a/abs/core/linhes-theme/tux_thoughts.png +++ b/abs/core/linhes-theme/tux_thoughts.png diff --git a/abs/core/linhes-theme/video-ui.xml.patch b/abs/core/linhes-theme/video-ui.xml.patch index 0047776..5c84fcd 100644 --- a/abs/core/linhes-theme/video-ui.xml.patch +++ b/abs/core/linhes-theme/video-ui.xml.patch @@ -1,5 +1,5 @@ ---- video-ui.xml.orig 2016-11-16 20:12:36.859292023 +0000 -+++ video-ui.xml 2016-11-16 20:11:55.327978776 +0000 +--- video-ui.xml.orig 2016-12-13 20:43:30.600314830 +0000 ++++ video-ui.xml 2016-12-13 20:34:54.359884898 +0000 @@ -171,6 +171,7 @@ <textarea name="description" from="basetextarea"> <area>24,51,515,393</area> @@ -8,6 +8,52 @@ <font>basesmall</font> </textarea> +@@ -358,38 +359,38 @@ + </imagetype> + <textarea name="title" from="basetextarea"> + <area>88,1,498,24</area> +- <font>basesmall</font> ++ <font>basesmallyellow</font> + </textarea> + <textarea name="director" from="title"> + <area>606,1,536,24</area> + <cutdown>no</cutdown> + </textarea> + <textarea name="year" from="title"> +- <area>1162,2,54,24</area> ++ <area>1162,1,54,24</area> + <cutdown>no</cutdown> + <align>right,vcenter</align> + </textarea> + <textarea name="rating" from="basetextarea"> +- <area>88,23,196,20</area> ++ <area>88,26,196,20</area> + <font>baseextrasmallblue</font> + <cutdown>no</cutdown> + <align>vcenter</align> + <template>Rated: %1</template> + </textarea> + <textarea name="length" from="rating"> +- <area>305,23,280,20</area> ++ <area>305,26,280,20</area> + <template>Runtime: %1</template> + </textarea> + <textarea name="season" from="rating"> +- <area>606,23,216,20</area> ++ <area>606,26,216,20</area> + <template>Season: %1</template> + </textarea> + <textarea name="episode" from="rating"> +- <area>843,23,228,20</area> ++ <area>843,26,228,20</area> + <template>Episode: %1</template> + </textarea> + <textarea name="browseable" from="rating"> +- <area>1082,23,134,20</area> ++ <area>1082,26,134,20</area> + <align>right,vcenter</align> + <template>Browseable: %1</template> + </textarea> @@ -641,7 +642,7 @@ <multiline>yes</multiline> <font>basesmall</font> diff --git a/abs/core/linhes-theme/warning.png b/abs/core/linhes-theme/warning.png Binary files differindex 047cac5..047cac5 100755..100644 --- a/abs/core/linhes-theme/warning.png +++ b/abs/core/linhes-theme/warning.png diff --git a/abs/core/linux/PKGBUILD b/abs/core/linux/PKGBUILD index 1e7309b..5b8d3ae 100644 --- a/abs/core/linux/PKGBUILD +++ b/abs/core/linux/PKGBUILD @@ -5,7 +5,7 @@ pkgbase=linux # Build stock -ARCH kernel #pkgbase=linux-custom # Build kernel with a different name _srcname=linux-4.4 -pkgver=4.4.26 +pkgver=4.4.39 pkgrel=1 arch=('i686' 'x86_64') url="http://www.kernel.org/" @@ -25,7 +25,7 @@ source=("https://www.kernel.org/pub/linux/kernel/v4.x/${_srcname}.tar.xz" sha256sums=('401d7c8fef594999a460d10c72c5a94e9c2e1022f16795ec51746b0d165418b2' 'SKIP' - '100bb46956585d418a6950bc898c5abc8206c3e34adfaf7ce4f6d14598918f72' + 'fc2b60d221aeaf3eafec4f36f299e4002be81da85117c3f59963fdcb6facb929' 'SKIP' 'fbbae1d873900e84d1b7ef00593fbb94fc79f078a34b22ee824bab8b0a92be64' '756a168bbc3bb582f0df45b977c32af53658f21d62fe15171c9ac85f52d8852a' diff --git a/abs/core/linux/linux.install.pkg b/abs/core/linux/linux.install.pkg index 50cb5b6..90e9fbb 100644 --- a/abs/core/linux/linux.install.pkg +++ b/abs/core/linux/linux.install.pkg @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME= -KERNEL_VERSION=4.4.26-1-ARCH +KERNEL_VERSION=4.4.39-1-ARCH post_install () { # updating module dependencies diff --git a/abs/core/mkinitcpio/PKGBUILD b/abs/core/mkinitcpio/PKGBUILD index 7b5b08d..e62fef0 100644 --- a/abs/core/mkinitcpio/PKGBUILD +++ b/abs/core/mkinitcpio/PKGBUILD @@ -3,7 +3,7 @@ # Maintainer: Thomas Bächler <thomas@archlinux.org> pkgname=mkinitcpio -pkgver=19 +pkgver=22 pkgrel=1 pkgdesc="Modular initramfs image creation utility" arch=('any') @@ -20,14 +20,18 @@ backup=('etc/mkinitcpio.conf') source=("https://sources.archlinux.org/other/$pkgname/$pkgname-$pkgver.tar.gz"{,.sig} 'mkinitcpio.patch') install=mkinitcpio.install +sha256sums=('54c1fc0fc128ae486e72362f49f52e94acd5fcfea9f44b719dc33250e42664eb' + 'SKIP' + 'dbc98f69a56f07c4a0f1c7fc3f7143c1719bdb30b75fbb29d75581bb51b5e98a') validpgpkeys=('487EACC08557AD082088DABA1EB2638FF56C0C53' # Dave Reisner '86CFFCA918CF3AF47147588051E8B148A9999C34') # Evangelos Foutras +check() { + make -C "$pkgname-$pkgver" check +} + package() { make -C "$pkgname-$pkgver" DESTDIR="$pkgdir" install cd $pkgdir/etc patch -Np0 < $srcdir/mkinitcpio.patch || exit 1 } -md5sums=('e8b1d1059bd7f056cd4ee33706280f0f' - 'SKIP' - '031fd7d3013c26175ae7421781893feb') diff --git a/abs/core/mythinstall/PKGBUILD b/abs/core/mythinstall/PKGBUILD index 45b963d..4c5b223 100644 --- a/abs/core/mythinstall/PKGBUILD +++ b/abs/core/mythinstall/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Jams pkgname=mythinstall pkgver=8.4 -pkgrel=4 +pkgrel=5 pkgdesc="LinHES installer/systemconfig GUI." arch=('i686' 'x86_64') depends=('mythtv>=0.28') diff --git a/abs/core/mythtv/stable-0.28/git_src/git_hash b/abs/core/mythtv/stable-0.28/git_src/git_hash index ace800a..7a99331 100644 --- a/abs/core/mythtv/stable-0.28/git_src/git_hash +++ b/abs/core/mythtv/stable-0.28/git_src/git_hash @@ -1 +1 @@ -2131fb291c49fc62cf8ac0c1b26c89193d2436dc +5a7b3c8d418f52b02f971469e230fb016f1f0e16 diff --git a/abs/core/mythtv/stable-0.28/git_src/git_hash_web b/abs/core/mythtv/stable-0.28/git_src/git_hash_web index 98b5fa0..35248ef 100644 --- a/abs/core/mythtv/stable-0.28/git_src/git_hash_web +++ b/abs/core/mythtv/stable-0.28/git_src/git_hash_web @@ -1 +1 @@ -3fa642f00da9529674ea93110396d036da1d43ff +7ed09ed8ed00e600a5336e571460f67034bdec6c diff --git a/abs/core/mythtv/stable-0.28/mythplugins/PKGBUILD b/abs/core/mythtv/stable-0.28/mythplugins/PKGBUILD index d161477..e2baa8b 100644 --- a/abs/core/mythtv/stable-0.28/mythplugins/PKGBUILD +++ b/abs/core/mythtv/stable-0.28/mythplugins/PKGBUILD @@ -9,7 +9,7 @@ pkgname=('mytharchive' 'mythweather' 'mythzoneminder') pkgver=0.28 -pkgrel=25 +pkgrel=31 arch=('i686' 'x86_64') url="http://www.mythtv.org" license=('GPL') diff --git a/abs/core/mythtv/stable-0.28/mythtv/PKGBUILD b/abs/core/mythtv/stable-0.28/mythtv/PKGBUILD index 5fb2f90..0b04f72 100644 --- a/abs/core/mythtv/stable-0.28/mythtv/PKGBUILD +++ b/abs/core/mythtv/stable-0.28/mythtv/PKGBUILD @@ -1,6 +1,6 @@ pkgname=mythtv pkgver=0.28 -pkgrel=25 +pkgrel=31 commit_hash=`cat ../git_src/git_hash` pkgdesc="A Homebrew PVR project $commit_hash" arch=('i686' 'x86_64') @@ -27,10 +27,12 @@ patches=( 'autoskip_reduce_commskip_jumpback.patch' 'change_msg_types.patch' 'disable_mythnotification_tuner_failure.patch' + 'disable_subtitle_cutdown_in_recording_options.patch' 'tv.cpp_fix_caps.patch' 'add_categorytype_Program.pm.patch' 'searchMetatdataSelectedGrabber.patch' 'addDamagedToProgDetails.patch' + 'defaultThemeLinHES.patch' ) optdepends=() @@ -112,8 +114,10 @@ md5sums=('e30b482dcd5f3e71c6419fd753bab2b1' '0bf5e92c0609a7eda8f253bf2e032590' 'f8a56ac814722b110dc9859169b9bda9' '1cd668136deea20efb79cf3e6310effc' + '3420d15014274b5bf8083355af71304b' '62c42b1043ebf65959fa9eced9ca3ed8' 'fa836371ebeb3be5b9855be8dd016f82' '0f674b9cad031ba1e03aaf6b5ee1499f' '6add9c16bbb988067e82029327e567b2' + '6f916ebc2b1d0ca75c9aa6cec62c6fbb' 'e73bb7c5036e44a68b6f6aa2f1bac077') diff --git a/abs/core/mythtv/stable-0.28/mythtv/defaultThemeLinHES.patch b/abs/core/mythtv/stable-0.28/mythtv/defaultThemeLinHES.patch new file mode 100644 index 0000000..5fb192c --- /dev/null +++ b/abs/core/mythtv/stable-0.28/mythtv/defaultThemeLinHES.patch @@ -0,0 +1,11 @@ +--- src/mythtv/libs/libmythui/mythuihelper.h.orig 2016-12-29 16:08:28.319634823 +0000 ++++ src/mythtv/libs/libmythui/mythuihelper.h 2016-12-29 16:09:03.245104062 +0000 +@@ -9,7 +9,7 @@ + #include "mythuiexp.h" + #include "themeinfo.h" + +-#define DEFAULT_UI_THEME "Terra" ++#define DEFAULT_UI_THEME "LinHES" + #define FALLBACK_UI_THEME "MythCenter-wide" + + class MythUIHelperPrivate; diff --git a/abs/core/mythtv/stable-0.28/mythtv/disable_subtitle_cutdown_in_recording_options.patch b/abs/core/mythtv/stable-0.28/mythtv/disable_subtitle_cutdown_in_recording_options.patch new file mode 100644 index 0000000..ed958e0 --- /dev/null +++ b/abs/core/mythtv/stable-0.28/mythtv/disable_subtitle_cutdown_in_recording_options.patch @@ -0,0 +1,12 @@ +--- src/mythtv/programs/mythfrontend/playbackbox.cpp.orig 2016-12-12 20:49:50.224910076 +0000 ++++ src/mythtv/programs/mythfrontend/playbackbox.cpp 2016-12-12 20:50:40.898386010 +0000 +@@ -3289,9 +3289,6 @@ + if (!pginfo.GetSubtitle().isEmpty()) + { + extra = QString('\n') + pginfo.GetSubtitle(); +- int maxll = max(title.length(), 20); +- if (extra.length() > maxll) +- extra = extra.left(maxll - 3) + "..."; + } + + return QString("\n%1%2\n%3").arg(title).arg(extra).arg(timedate); diff --git a/abs/core/mythtv/stable-0.28/mythtv/fixQTvirtualkeyboard.patch.28 b/abs/core/mythtv/stable-0.28/mythtv/fixQTvirtualkeyboard.patch.28 deleted file mode 100644 index bfaad97..0000000 --- a/abs/core/mythtv/stable-0.28/mythtv/fixQTvirtualkeyboard.patch.28 +++ /dev/null @@ -1,46 +0,0 @@ ---- src/mythtv/libs/libmythui/mythmainwindow.cpp.orig 2016-03-15 17:30:19.608956780 +0000 -+++ src/mythtv/libs/libmythui/mythmainwindow.cpp 2016-03-15 17:37:17.368720092 +0000 -@@ -1458,6 +1458,7 @@ - #endif - if (currentWidget()) - { -+#ifdef Q_OS_MAC - // don't disable the current widget, instead we disable all its children - // on mac, disabling the current active widget entirely prevent keyboard to - // work on the newly opened widget. -@@ -1473,6 +1474,9 @@ - } - } - } -+#else -+ currentWidget()->setEnabled(false); -+#endif - #ifdef USE_OPENGL_QT5 - else - { -@@ -1506,8 +1510,6 @@ - if (!current) - { - current = this; -- // We're be to the main window, enable it just in case -- setEnabled(true); - #ifdef USE_OPENGL_QT5 - // Restore WA_PaintOnScreen, used by OpenGL GUI painter - setAttribute(Qt::WA_PaintOnScreen, d->m_bSavedPOS); -@@ -1515,6 +1517,7 @@ - QTimer::singleShot(2, d->paintwin, SLOT(update())); - #endif - } -+#ifdef Q_OS_MAC - else - { - QList<QWidget*> list = current->findChildren<QWidget *>(); -@@ -1529,6 +1532,8 @@ - } - } - current->raise(); -+#endif -+ current->setEnabled(true); - current->setFocus(); - current->setMouseTracking(true); - diff --git a/abs/core/mythtv/stable-0.28/mythtv/menu-xml/siriusmenu.xml b/abs/core/mythtv/stable-0.28/mythtv/menu-xml/siriusmenu.xml.del index e317b36..e317b36 100644 --- a/abs/core/mythtv/stable-0.28/mythtv/menu-xml/siriusmenu.xml +++ b/abs/core/mythtv/stable-0.28/mythtv/menu-xml/siriusmenu.xml.del diff --git a/abs/core/mythtv/stable-0.28/mythtv/menu-xml/xmmenu.xml b/abs/core/mythtv/stable-0.28/mythtv/menu-xml/xmmenu.xml.del index 6b26d11..6b26d11 100644 --- a/abs/core/mythtv/stable-0.28/mythtv/menu-xml/xmmenu.xml +++ b/abs/core/mythtv/stable-0.28/mythtv/menu-xml/xmmenu.xml.del diff --git a/abs/core/mythtv/stable-0.28/mythweb/PKGBUILD b/abs/core/mythtv/stable-0.28/mythweb/PKGBUILD index 785056e..62fbf57 100644 --- a/abs/core/mythtv/stable-0.28/mythweb/PKGBUILD +++ b/abs/core/mythtv/stable-0.28/mythweb/PKGBUILD @@ -1,6 +1,6 @@ pkgname=mythweb pkgver=0.28 -pkgrel=8 +pkgrel=9 commit_hash=`cat ../git_src/git_hash_web` pkgdesc="Web interface for MythTV's backend, $commit_hash" arch=('i686' 'x86_64') diff --git a/abs/core/nano/PKGBUILD b/abs/core/nano/PKGBUILD index b1fe973..6b63833 100644 --- a/abs/core/nano/PKGBUILD +++ b/abs/core/nano/PKGBUILD @@ -3,7 +3,7 @@ # Contributor: Judd <judd@archlinux.org> pkgname=nano -pkgver=2.7.0 +pkgver=2.7.3 pkgrel=1 pkgdesc="Pico editor clone with enhancements" arch=('i686' 'x86_64') @@ -12,9 +12,9 @@ url="http://www.nano-editor.org" groups=('base') depends=('ncurses' 'file' 'sh') backup=('etc/nanorc') -source=(http://www.nano-editor.org/dist/v2.7/${pkgname}-${pkgver}.tar.gz{,.asc}) -md5sums=('0805c5b8c75d4fde053e4b1431270f91' - 'SKIP') +source=(https://www.nano-editor.org/dist/v2.7/${pkgname}-${pkgver}.tar.gz{,.asc}) +sha256sums=('3574d4594d051f3b572c47d63bfc3763fb1148c50b811ba7a016bacd94887a88' + 'SKIP') validpgpkeys=('8DA6FE7BFA7A418AB3CB2354BCB356DF91009FA7' # "Chris Allegretta <chrisa@asty.org>" 'A7F6A64A67DA09EF92782DD79DF4862AF1175C5B' # "Benno Schulenberg <bensberg@justemail.net>" ) diff --git a/abs/core/nvidia-304xx-utils/PKGBUILD b/abs/core/nvidia-304xx-utils/PKGBUILD index 45a30f0..6c48a82 100644 --- a/abs/core/nvidia-304xx-utils/PKGBUILD +++ b/abs/core/nvidia-304xx-utils/PKGBUILD @@ -4,7 +4,7 @@ pkgbase=nvidia-304xx-utils pkgname=('nvidia-304xx-utils' 'nvidia-304xx-libgl' 'opencl-nvidia-304xx') -pkgver=304.132 +pkgver=304.134 pkgrel=1 arch=('i686' 'x86_64') url="http://www.nvidia.com/" @@ -13,8 +13,8 @@ makedepends=('zlib') options=('!strip') source_i686=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run") source_x86_64=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run") -sha512sums_i686=('70a6ed74a93ac2a1acec5eab5078dfe05fab66c6264d67f3238a6b28af7b39f7205e237214bac4ee5d2366e8c6a4a63dfc8dc113e9e977ee2387c5c8c63ccc8f') -sha512sums_x86_64=('990c79120536335f83ecd665140b2af8f778785a2cdc8afb06abbacba49e66d87f5af25fb4d6c64779cf898b61273d17cb0213516f497d1c0fbd63b7c5e85d8c') +sha512sums_i686=('e047c62b33b092225ead42134acd596e3ae43d9bb8324188308dd7d497f33e790e7366d7a1c5ef5de66f484219d99de4c6e6206d390122d3fab4d30397ab463c') +sha512sums_x86_64=('339efb8b47faaa16b984d84e43ef18d849a563c95298972c36616a22712740e3233c2cd7b0837d393a8f24a6ec5b501295cdc77adae12deccc993dfca48022fc') if [ "$CARCH" = "i686" ]; then _arch='x86' @@ -40,9 +40,9 @@ build() { package_opencl-nvidia-304xx() { pkgdesc="OpenCL implemention for NVIDIA, 304xx legacy branch" - depends=('libcl' 'zlib') + depends=('zlib') optdepends=('opencl-headers: headers necessary for OpenCL development') - provides=('opencl-nvidia') + provides=('opencl-nvidia' 'opencl-driver') conflicts=('opencl-nvidia') cd ${_pkg} diff --git a/abs/core/nvidia-304xx/PKGBUILD b/abs/core/nvidia-304xx/PKGBUILD index e2a8a6d..9456106 100644 --- a/abs/core/nvidia-304xx/PKGBUILD +++ b/abs/core/nvidia-304xx/PKGBUILD @@ -4,7 +4,7 @@ pkgbase=nvidia-304xx pkgname=(nvidia-304xx nvidia-304xx-dkms) -pkgver=304.132 +pkgver=304.134 _extramodules=extramodules-4.4-ARCH pkgrel=1 arch=('i686' 'x86_64') @@ -17,8 +17,8 @@ source=('disable-mtrr.patch') source_i686+=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run") source_x86_64+=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run") sha512sums=('54e8825e523f11706890e09e476498f3a30f75ce4e350ff2ff8a1e1c3af574d9ccfb8903543766b6863d94cdfbf46e68cd3d33380867dd976cafc8dd2dd78774') -sha512sums_i686=('70a6ed74a93ac2a1acec5eab5078dfe05fab66c6264d67f3238a6b28af7b39f7205e237214bac4ee5d2366e8c6a4a63dfc8dc113e9e977ee2387c5c8c63ccc8f') -sha512sums_x86_64=('990c79120536335f83ecd665140b2af8f778785a2cdc8afb06abbacba49e66d87f5af25fb4d6c64779cf898b61273d17cb0213516f497d1c0fbd63b7c5e85d8c') +sha512sums_i686=('e047c62b33b092225ead42134acd596e3ae43d9bb8324188308dd7d497f33e790e7366d7a1c5ef5de66f484219d99de4c6e6206d390122d3fab4d30397ab463c') +sha512sums_x86_64=('339efb8b47faaa16b984d84e43ef18d849a563c95298972c36616a22712740e3233c2cd7b0837d393a8f24a6ec5b501295cdc77adae12deccc993dfca48022fc') [[ "$CARCH" = "i686" ]] && _pkg="NVIDIA-Linux-x86-${pkgver}" [[ "$CARCH" = "x86_64" ]] && _pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32" diff --git a/abs/core/nvidia-340xx-utils/PKGBUILD b/abs/core/nvidia-340xx-utils/PKGBUILD index 9b12806..a2e858e 100644 --- a/abs/core/nvidia-340xx-utils/PKGBUILD +++ b/abs/core/nvidia-340xx-utils/PKGBUILD @@ -5,8 +5,8 @@ pkgbase=nvidia-340xx-utils pkgname=('nvidia-340xx-utils' 'nvidia-340xx-libgl' 'opencl-nvidia-340xx') -pkgver=340.98 -pkgrel=2 +pkgver=340.101 +pkgrel=1 arch=('i686' 'x86_64') url="http://www.nvidia.com/" license=('custom') @@ -14,9 +14,9 @@ options=('!strip') source=(nvidia-drm-outputclass.conf) source_i686=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run") source_x86_64=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run") -sha1sums=('4ca2fbb2389d0bcb7a2c6f614860522d9ddf58ab') -sha1sums_i686=('931773a3be7ab03ff787974b0760cd9ee1bd14e2') -sha1sums_x86_64=('a31ff95eae0ec47b89a9ba5475d17d44ff4ee2e0') +sha512sums=('06c649df3b02c6ccf5491fecd06f4c979656aaba2bb366e6197e96bb0eecd8d0a46245e69628d507ddc8c5fc6d5f1cac694f036bc45ba51f82a092ebd6097bf5') +sha512sums_i686=('5866f2b4e6e22863c54d9fc08c9c88c9c911df2396d0ceaca653ded04589ea3a9e4550ed58f4b182b0a42cfe205ef643fe43ea709478e5df5360a7f74fa87f41') +sha512sums_x86_64=('d5bea7315346e93a7cccd3d99900f4dad51dfa6e93382d4d61c314d0ab97dea063169b8d666d3a3373dea33b4322f945c3a18ed0fc3308e3f89af6f22f373abc') [[ "$CARCH" = "i686" ]] && _pkg="NVIDIA-Linux-x86-${pkgver}" [[ "$CARCH" = "x86_64" ]] && _pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32" @@ -39,10 +39,10 @@ prepare() { package_opencl-nvidia-340xx() { pkgdesc="OpenCL implemention for NVIDIA" - depends=('libcl' 'zlib') + depends=('zlib') optdepends=('opencl-headers: headers necessary for OpenCL development') conflicts=('opencl-nvidia') - provides=('opencl-nvidia') + provides=('opencl-nvidia' 'opencl-driver') cd "${_pkg}" # OpenCL diff --git a/abs/core/nvidia-340xx/PKGBUILD b/abs/core/nvidia-340xx/PKGBUILD index 973737b..ab42426 100644 --- a/abs/core/nvidia-340xx/PKGBUILD +++ b/abs/core/nvidia-340xx/PKGBUILD @@ -4,9 +4,9 @@ pkgbase=nvidia-340xx pkgname=(nvidia-340xx nvidia-340xx-dkms) -pkgver=340.98 +pkgver=340.101 _extramodules=extramodules-4.4-ARCH -pkgrel=2 +pkgrel=4 arch=('i686' 'x86_64') url="http://www.nvidia.com/" makedepends=("nvidia-340xx-libgl=${pkgver}" "nvidia-340xx-utils=${pkgver}" 'linux' 'linux-headers>=4.4' 'linux-headers<4.5') @@ -15,8 +15,8 @@ license=('custom') options=(!strip) source_i686+=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run") source_x86_64+=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run") -md5sums_i686=('3ccb023eec137cbee0d2035c288b6bbe') -md5sums_x86_64=('e8d1292d8d002a15e10ea349151fa8f2') +sha512sums_i686=('5866f2b4e6e22863c54d9fc08c9c88c9c911df2396d0ceaca653ded04589ea3a9e4550ed58f4b182b0a42cfe205ef643fe43ea709478e5df5360a7f74fa87f41') +sha512sums_x86_64=('d5bea7315346e93a7cccd3d99900f4dad51dfa6e93382d4d61c314d0ab97dea063169b8d666d3a3373dea33b4322f945c3a18ed0fc3308e3f89af6f22f373abc') [[ "$CARCH" = "i686" ]] && _pkg="NVIDIA-Linux-x86-${pkgver}" [[ "$CARCH" = "x86_64" ]] && _pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32" diff --git a/abs/core/nvidia-utils/PKGBUILD b/abs/core/nvidia-utils/PKGBUILD index dde54ab..95be900 100644 --- a/abs/core/nvidia-utils/PKGBUILD +++ b/abs/core/nvidia-utils/PKGBUILD @@ -5,7 +5,7 @@ pkgbase=nvidia-utils pkgname=('nvidia-utils' 'nvidia-libgl' 'opencl-nvidia') -pkgver=370.28 +pkgver=375.26 pkgrel=2 arch=('i686' 'x86_64') url="http://www.nvidia.com/" @@ -13,8 +13,8 @@ license=('custom') options=('!strip') source_i686=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run") source_x86_64=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run") -md5sums_i686=('7d3e1c691cd53852f422a93169268178') -md5sums_x86_64=('3bcd9a132e50a17b846869f1c57b9c75') +sha512sums_i686=('3bc859a95469a45f3c627018248d83e178d160385c3d17d9f890b0d142ecd1220fb21c442e4fe7755b831227a9c820736f447b162acd9699819c6e8145d6d841') +sha512sums_x86_64=('f52f6597daa1eaf4cbd934d785da6028ef23ecef98e14746143e3738504f8d65b73788abbcf9fd812317fc2c53cdf1c4d4839de57fafdea1930a08c6b21f1992') [[ "$CARCH" = "i686" ]] && _pkg="NVIDIA-Linux-x86-${pkgver}" [[ "$CARCH" = "x86_64" ]] && _pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32" @@ -37,8 +37,9 @@ prepare() { package_opencl-nvidia() { pkgdesc="OpenCL implemention for NVIDIA" - depends=('libcl' 'zlib') + depends=('zlib') optdepends=('opencl-headers: headers necessary for OpenCL development') + provides=('opencl-driver') cd "${_pkg}" # OpenCL @@ -86,6 +87,7 @@ package_nvidia-utils() { optdepends=('nvidia-settings: configuration tool' 'xorg-server-devel: nvidia-xconfig' 'opencl-nvidia: OpenCL support') + provides=('vulkan-driver') install="${pkgname}.install" cd "${_pkg}" @@ -98,17 +100,21 @@ package_nvidia-utils() { install -D -m755 "libGLX_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/libGLX_nvidia.so.${pkgver}" ln -s "libGLX_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/libGLX_indirect.so.0" + # Wayland stuff + install -D -m755 "libnvidia-egl-wayland.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-egl-wayland.so.${pkgver}" + ln -s "libnvidia-egl-wayland.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-egl-wayland.so.0" + # OpenGL libraries - install -D -m755 "libEGL.so.1" "${pkgdir}/usr/lib/nvidia/libEGL.so.1" install -D -m755 "libEGL_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/libEGL_nvidia.so.${pkgver}" install -D -m755 "libGLESv1_CM_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/libGLESv1_CM_nvidia.so.${pkgver}" install -D -m755 "libGLESv2_nvidia.so.${pkgver}" "${pkgdir}/usr/lib/libGLESv2_nvidia.so.${pkgver}" + install -D -m644 "10_nvidia.json" "${pkgdir}/usr/share/glvnd/egl_vendor.d/10_nvidia.json" # OpenGL core library install -D -m755 "libnvidia-glcore.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-glcore.so.${pkgver}" install -D -m755 "libnvidia-eglcore.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-eglcore.so.${pkgver}" install -D -m755 "libnvidia-glsi.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-glsi.so.${pkgver}" - + # misc install -D -m755 "libnvidia-ifr.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-ifr.so.${pkgver}" install -D -m755 "libnvidia-fbc.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-fbc.so.${pkgver}" @@ -176,9 +182,9 @@ package_nvidia-utils() { install -D -m644 NVIDIA_Changelog "${pkgdir}/usr/share/doc/nvidia/NVIDIA_Changelog" cp -r html "${pkgdir}/usr/share/doc/nvidia/" ln -s nvidia "${pkgdir}/usr/share/doc/nvidia-utils" - + # distro specific files must be installed in /usr/share/X11/xorg.conf.d install -D -m644 nvidia-drm-outputclass.conf "${pkgdir}/usr/share/X11/xorg.conf.d/nvidia-drm-outputclass.conf" - + create_links } diff --git a/abs/core/nvidia/PKGBUILD b/abs/core/nvidia/PKGBUILD index e9254ba..47329f3 100644 --- a/abs/core/nvidia/PKGBUILD +++ b/abs/core/nvidia/PKGBUILD @@ -5,9 +5,9 @@ pkgbase=nvidia pkgname=(nvidia nvidia-dkms) -pkgver=370.28 +pkgver=375.26 _extramodules=extramodules-4.4-ARCH -pkgrel=2 +pkgrel=1 pkgdesc="NVIDIA drivers for linux" arch=('i686' 'x86_64') url="http://www.nvidia.com/" @@ -16,13 +16,13 @@ license=('custom') options=('!strip') source_i686=("http://us.download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run") source_x86_64=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run") -md5sums_i686=('7d3e1c691cd53852f422a93169268178') -md5sums_x86_64=('3bcd9a132e50a17b846869f1c57b9c75') +sha512sums_i686=('3bc859a95469a45f3c627018248d83e178d160385c3d17d9f890b0d142ecd1220fb21c442e4fe7755b831227a9c820736f447b162acd9699819c6e8145d6d841') +sha512sums_x86_64=('f52f6597daa1eaf4cbd934d785da6028ef23ecef98e14746143e3738504f8d65b73788abbcf9fd812317fc2c53cdf1c4d4839de57fafdea1930a08c6b21f1992') [[ "$CARCH" = "i686" ]] && _pkg="NVIDIA-Linux-x86-${pkgver}" [[ "$CARCH" = "x86_64" ]] && _pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32" -prepare() { +prepare() { sh "${_pkg}.run" --extract-only cd "${_pkg}" diff --git a/abs/core/pam/PKGBUILD b/abs/core/pam/PKGBUILD index 9290c1e..3279743 100644 --- a/abs/core/pam/PKGBUILD +++ b/abs/core/pam/PKGBUILD @@ -3,7 +3,7 @@ # Contributor: judd <jvinet@zeroflux.org> pkgname=pam -pkgver=1.2.1 +pkgver=1.3.0 pkgrel=1 pkgdesc="PAM (Pluggable Authentication Modules) library" arch=('i686' 'x86_64') @@ -15,7 +15,7 @@ backup=(etc/security/{access.conf,group.conf,limits.conf,namespace.conf,namespac source=(http://linux-pam.org/library/Linux-PAM-$pkgver.tar.bz2 https://sources.archlinux.org/other/pam_unix2/pam_unix2-2.9.1.tar.bz2 pam_unix2-glibc216.patch) -md5sums=('9dc53067556d2dd567808fd509519dd6' +md5sums=('da4b2289b7cfb19583d54e9eaaef1c3a' 'da6a46e5f8cd3eaa7cbc4fc3a7e2b555' 'dac109f68e04a4df37575fda6001ea17') @@ -53,16 +53,6 @@ package() { cd $srcdir/pam_unix2-2.9.1 make DESTDIR=$pkgdir install - # add the realtime permissions for audio users - sed -i 's|# End of file||' $pkgdir/etc/security/limits.conf - cat >>$pkgdir/etc/security/limits.conf <<_EOT -* - rtprio 0 -* - nice 0 -@audio - rtprio 65 -@audio - nice -10 -@audio - memlock 40000 -_EOT - # fix some missing symlinks from old pam for compatibility cd $pkgdir/usr/lib/security ln -s pam_unix.so pam_unix_acct.so @@ -75,4 +65,8 @@ _EOT # remove doc which is not used anymore # FS #40749 rm $pkgdir/usr/share/doc/Linux-PAM/sag-pam_userdb.html + + # disable coredumps + sed -i 's|# End of file||' $pkgdir/etc/security/limits.conf + echo "* hard core 0" >> $pkgdir/etc/security/limits.conf } diff --git a/abs/core/pam/__changelog b/abs/core/pam/__changelog new file mode 100644 index 0000000..5f2315e --- /dev/null +++ b/abs/core/pam/__changelog @@ -0,0 +1 @@ +PKGBUILD: disable coredumps in limits.conf diff --git a/abs/core/pam/pam-1.1.8-cve-2013-7041.patch b/abs/core/pam/pam-1.1.8-cve-2013-7041.patch deleted file mode 100644 index 96fa916..0000000 --- a/abs/core/pam/pam-1.1.8-cve-2013-7041.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 57a1e2b274d0a6376d92ada9926e5c5741e7da20 Mon Sep 17 00:00:00 2001 -From: "Dmitry V. Levin" <ldv@altlinux.org> -Date: Fri, 24 Jan 2014 22:18:32 +0000 -Subject: [PATCH] pam_userdb: fix password hash comparison - -Starting with commit Linux-PAM-0-77-28-g0b3e583 that introduced hashed -passwords support in pam_userdb, hashes are compared case-insensitively. -This bug leads to accepting hashes for completely different passwords in -addition to those that should be accepted. - -Additionally, commit Linux-PAM-1_1_6-13-ge2a8187 that added support for -modern password hashes with different lengths and settings, did not -update the hash comparison accordingly, which leads to accepting -computed hashes longer than stored hashes when the latter is a prefix -of the former. - -* modules/pam_userdb/pam_userdb.c (user_lookup): Reject the computed -hash whose length differs from the stored hash length. -Compare computed and stored hashes case-sensitively. -Fixes CVE-2013-7041. - -Bug-Debian: http://bugs.debian.org/731368 ---- - modules/pam_userdb/pam_userdb.c | 9 ++++++--- - 1 file changed, 6 insertions(+), 3 deletions(-) - -diff --git a/modules/pam_userdb/pam_userdb.c b/modules/pam_userdb/pam_userdb.c -index de8b5b1..ff040e6 100644 ---- a/modules/pam_userdb/pam_userdb.c -+++ b/modules/pam_userdb/pam_userdb.c -@@ -222,12 +222,15 @@ user_lookup (pam_handle_t *pamh, const char *database, const char *cryptmode, - } else { - cryptpw = crypt (pass, data.dptr); - -- if (cryptpw) { -- compare = strncasecmp (data.dptr, cryptpw, data.dsize); -+ if (cryptpw && strlen(cryptpw) == (size_t)data.dsize) { -+ compare = memcmp(data.dptr, cryptpw, data.dsize); - } else { - compare = -2; - if (ctrl & PAM_DEBUG_ARG) { -- pam_syslog(pamh, LOG_INFO, "crypt() returned NULL"); -+ if (cryptpw) -+ pam_syslog(pamh, LOG_INFO, "lengths of computed and stored hashes differ"); -+ else -+ pam_syslog(pamh, LOG_INFO, "crypt() returned NULL"); - } - }; - --- -1.8.3.1 - diff --git a/abs/core/pam/pam-1.1.8-cve-2014-2583.patch b/abs/core/pam/pam-1.1.8-cve-2014-2583.patch deleted file mode 100644 index f2aa2de..0000000 --- a/abs/core/pam/pam-1.1.8-cve-2014-2583.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 9dcead87e6d7f66d34e7a56d11a30daca367dffb Mon Sep 17 00:00:00 2001 -From: "Dmitry V. Levin" <ldv@altlinux.org> -Date: Wed, 26 Mar 2014 22:17:23 +0000 -Subject: [PATCH] pam_timestamp: fix potential directory traversal issue - (ticket #27) - -pam_timestamp uses values of PAM_RUSER and PAM_TTY as components of -the timestamp pathname it creates, so extra care should be taken to -avoid potential directory traversal issues. - -* modules/pam_timestamp/pam_timestamp.c (check_tty): Treat -"." and ".." tty values as invalid. -(get_ruser): Treat "." and ".." ruser values, as well as any ruser -value containing '/', as invalid. - -Fixes CVE-2014-2583. - -Reported-by: Sebastian Krahmer <krahmer@suse.de> ---- - modules/pam_timestamp/pam_timestamp.c | 13 ++++++++++++- - 1 file changed, 12 insertions(+), 1 deletion(-) - -diff --git a/modules/pam_timestamp/pam_timestamp.c b/modules/pam_timestamp/pam_timestamp.c -index 5193733..b3f08b1 100644 ---- a/modules/pam_timestamp/pam_timestamp.c -+++ b/modules/pam_timestamp/pam_timestamp.c -@@ -158,7 +158,7 @@ check_tty(const char *tty) - tty = strrchr(tty, '/') + 1; - } - /* Make sure the tty wasn't actually a directory (no basename). */ -- if (strlen(tty) == 0) { -+ if (!strlen(tty) || !strcmp(tty, ".") || !strcmp(tty, "..")) { - return NULL; - } - return tty; -@@ -243,6 +243,17 @@ get_ruser(pam_handle_t *pamh, char *ruserbuf, size_t ruserbuflen) - if (pwd != NULL) { - ruser = pwd->pw_name; - } -+ } else { -+ /* -+ * This ruser is used by format_timestamp_name as a component -+ * of constructed timestamp pathname, so ".", "..", and '/' -+ * are disallowed to avoid potential path traversal issues. -+ */ -+ if (!strcmp(ruser, ".") || -+ !strcmp(ruser, "..") || -+ strchr(ruser, '/')) { -+ ruser = NULL; -+ } - } - if (ruser == NULL || strlen(ruser) >= ruserbuflen) { - *ruserbuf = '\0'; --- -1.8.3.1 - diff --git a/abs/core/procps-ng/PKGBUILD b/abs/core/procps-ng/PKGBUILD index ba2e3bd..a017867 100644 --- a/abs/core/procps-ng/PKGBUILD +++ b/abs/core/procps-ng/PKGBUILD @@ -3,8 +3,8 @@ # Contributor: Eric Bélanger <eric@archlinux.org> pkgname=procps-ng -pkgver=3.3.11 -pkgrel=2 +pkgver=3.3.12 +pkgrel=1 pkgdesc='Utilities for monitoring your system and its processes' url='https://gitlab.com/procps-ng/procps' license=('GPL' 'LGPL') @@ -12,7 +12,7 @@ arch=('i686' 'x86_64') makedepends=('systemd') depends=('ncurses' 'libsystemd') source=("http://downloads.sourceforge.net/project/${pkgname}/Production/${pkgname}-${pkgver}.tar.xz") -sha1sums=('1bdca65547df9ed019bd83649b0f8b8eaa017e25') +sha1sums=('82c0745f150f1385ca01fe7d24f05f74e31c94c6') groups=('base') @@ -38,6 +38,9 @@ build() { --sbindir=/usr/bin \ --enable-watch8bit \ --with-systemd \ + --disable-kill \ + + # kill is provided by util-linux make } @@ -45,8 +48,4 @@ build() { package() { cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install - - # provided by util-linux - rm "${pkgdir}/usr/bin/kill" - rm "${pkgdir}/usr/share/man/man1/kill.1" } diff --git a/abs/core/runit-scripts/PKGBUILD b/abs/core/runit-scripts/PKGBUILD index 4fd9efd..f31881e 100755 --- a/abs/core/runit-scripts/PKGBUILD +++ b/abs/core/runit-scripts/PKGBUILD @@ -1,9 +1,9 @@ pkgname=runit-scripts pkgver=8.4 -pkgrel=2 +pkgrel=3 pkgdesc="collection of startup scripts for runit" url="http://smarden.org/runit/" -license="BSD" +license=('BSD') depends=('glibc' 'util-linux' 'initscripts' 'runit' ) makedepends=('gcc' 'make' 'rsync') conflicts=() diff --git a/abs/core/runit-scripts/runitscripts/services/autofs/run b/abs/core/runit-scripts/runitscripts/services/autofs/run index d6659c4..c0800a2 100755 --- a/abs/core/runit-scripts/runitscripts/services/autofs/run +++ b/abs/core/runit-scripts/runitscripts/services/autofs/run @@ -4,10 +4,6 @@ exec 2>&1 . /etc/rc.conf . /etc/rc.d/functions -stat_runit "Starting autofs4 kernel module" && echo "" -set -e # barf if modprobe fails -/usr/bin/modprobe autofs4 - stat_runit "Starting autofs automount" && echo "" # source application-specific settings [ -f /etc/conf.d/autofs ] && . /etc/conf.d/autofs diff --git a/abs/core/system-templates/PKGBUILD b/abs/core/system-templates/PKGBUILD index c685bae..b496d1c 100755 --- a/abs/core/system-templates/PKGBUILD +++ b/abs/core/system-templates/PKGBUILD @@ -1,6 +1,6 @@ pkgname=system-templates pkgver=8.4 -pkgrel=1 +pkgrel=2 conflicts=( ) pkgdesc="Templates used for system configuration" depends=() diff --git a/abs/core/system-templates/templates/xorg/nvidia_disable_msi.txt b/abs/core/system-templates/templates/xorg/nvidia_disable_msi.txt new file mode 100644 index 0000000..0a679dc --- /dev/null +++ b/abs/core/system-templates/templates/xorg/nvidia_disable_msi.txt @@ -0,0 +1,10 @@ +Devices listed will have the MSI interrupts disabled via the NVIDIA kernel module parameter "NVreg_EnableMSI=0" + +NVIDIA GPU product Device PCI ID Subdevice PCI ID +GeForce 8300 GS 0x0406 +GeForce 8300 GS 0x0423 +GeForce 8200M 0x0840 +GeForce 8200M G 0x0845 +GeForce 8300 0x0848 +GeForce 8200 0x0849 +GeForce 8200M G 0x086F diff --git a/abs/core/util-linux/0001-chrt-default-to-SCHED_RR-policy.patch b/abs/core/util-linux/0001-chrt-default-to-SCHED_RR-policy.patch new file mode 100644 index 0000000..c442149 --- /dev/null +++ b/abs/core/util-linux/0001-chrt-default-to-SCHED_RR-policy.patch @@ -0,0 +1,39 @@ +From c7adc2f204f19167f781fa2ee739e0ca386fc4f5 Mon Sep 17 00:00:00 2001 +From: Andreas Henriksson <andreas@fatal.se> +Date: Fri, 2 Dec 2016 15:10:18 +0100 +Subject: [PATCH] chrt: default to SCHED_RR policy + +This fixes a regression introduced in: + +commit 7a4ea5664edba98bff28adec3a9c3cfb5763a495 +"chrt: add control struct" + +Previously (and as documented in the manpage) the default policy +was SCHED_RR. Now it's implicitly SCHED_OTHER (0) as the value +is not initialized explicitly anymore. + +Test-command: chrt 90 echo hello + +Reported-by: Patrick Pelissier <patrick.pelissier@gmail.com> +Addresses: http://bugs.debian.org/846572 +Signed-off-by: Andreas Henriksson <andreas@fatal.se> +--- + schedutils/chrt.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/schedutils/chrt.c b/schedutils/chrt.c +index a861d9f..73d1ffa 100644 +--- a/schedutils/chrt.c ++++ b/schedutils/chrt.c +@@ -409,7 +409,7 @@ static void set_sched(struct chrt_ctl *ctl) + + int main(int argc, char **argv) + { +- struct chrt_ctl _ctl = { .pid = -1 }, *ctl = &_ctl; ++ struct chrt_ctl _ctl = { .pid = -1, .policy = SCHED_RR }, *ctl = &_ctl; + int c; + + static const struct option longopts[] = { +-- +2.10.2 + diff --git a/abs/core/util-linux/0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch b/abs/core/util-linux/0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch new file mode 100644 index 0000000..b13f189 --- /dev/null +++ b/abs/core/util-linux/0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch @@ -0,0 +1,79 @@ +From 3fcbd7978980dc1a29c626b701333e27599e506d Mon Sep 17 00:00:00 2001 +From: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> +Date: Wed, 23 Nov 2016 14:13:34 +0900 +Subject: [PATCH] lsns: Fix parser for /proc/<pid>/stat which is including + space in comm + +For example, child process of spamd has + + 32031 (spamd child) S 32026 32026 32026 0 -1 4210752 338 0 0 0 ... + +fscanf("%d %*s %c %d*[^\n]") in read_process() can't parse above as we +expected, because %s only skips non-whitespace. I.e. it parses like +following, + + 32031 (spamd child) S 32026 32026 32026 0 -1 4210752 338 0 0 0 ... + +---+ +----+ + + %d %*s %c + +and returns 2 (pid=32031, state=c). + +This fixes it by skipping task->comm part manually. + +Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> +--- + sys-utils/lsns.c | 30 ++++++++++++++++++++++++++---- + 1 file changed, 26 insertions(+), 4 deletions(-) + +diff --git a/sys-utils/lsns.c b/sys-utils/lsns.c +index e4fd208..809737c 100644 +--- a/sys-utils/lsns.c ++++ b/sys-utils/lsns.c +@@ -217,6 +217,30 @@ static int get_ns_ino(int dir, const char *nsname, ino_t *ino) + return 0; + } + ++static int parse_proc_stat(FILE *fp, pid_t *pid, char *state, pid_t *ppid) ++{ ++ char *line = NULL, *p; ++ size_t len = 0; ++ int rc; ++ ++ if (getline(&line, &len, fp) < 0) { ++ rc = -errno; ++ goto error; ++ } ++ ++ p = strrchr(line, ')'); ++ if (p == NULL || ++ sscanf(line, "%d (", pid) != 1 || ++ sscanf(p, ") %c %d*[^\n]", state, ppid) != 2) { ++ rc = -EINVAL; ++ goto error; ++ } ++ rc = 0; ++ ++error: ++ free(line); ++ return rc; ++} + + static int read_process(struct lsns *ls, pid_t pid) + { +@@ -255,11 +279,9 @@ static int read_process(struct lsns *ls, pid_t pid) + rc = -errno; + goto done; + } +- rc = fscanf(f, "%d %*s %c %d*[^\n]", &p->pid, &p->state, &p->ppid); +- if (rc != 3) { +- rc = rc < 0 ? -errno : -EINVAL; ++ rc = parse_proc_stat(f, &p->pid, &p->state, &p->ppid); ++ if (rc < 0) + goto done; +- } + rc = 0; + + for (i = 0; i < ARRAY_SIZE(p->ns_ids); i++) { +-- +2.10.2 + diff --git a/abs/core/util-linux/0001-sfdisk-cleanup-dump-error-messages.patch b/abs/core/util-linux/0001-sfdisk-cleanup-dump-error-messages.patch new file mode 100644 index 0000000..918138c --- /dev/null +++ b/abs/core/util-linux/0001-sfdisk-cleanup-dump-error-messages.patch @@ -0,0 +1,44 @@ +From c49b765a6e9031642e2bb846e93dddc6827e4b28 Mon Sep 17 00:00:00 2001 +From: Karel Zak <kzak@redhat.com> +Date: Wed, 30 Nov 2016 10:53:56 +0100 +Subject: [PATCH] sfdisk: cleanup --dump error messages + +old: + # truncate -s 1G empty && ./sfdisk --dump empty + sfdisk: failed to dump partition table: Success + +new: + # truncate -s 1G empty && ./sfdisk --dump empty + sfdisk: empty: does not contain a recognized partition table. + +Addresses: https://github.com/karelzak/util-linux/issues/375 +Signed-off-by: Karel Zak <kzak@redhat.com> +--- + disk-utils/sfdisk.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c +index 0f69d65..10307ad 100644 +--- a/disk-utils/sfdisk.c ++++ b/disk-utils/sfdisk.c +@@ -950,13 +950,16 @@ static int command_dump(struct sfdisk *sf, int argc, char **argv) + if (rc) + err(EXIT_FAILURE, _("cannot open %s"), devname); + ++ if (!fdisk_has_label(sf->cxt)) ++ errx(EXIT_FAILURE, _("%s: does not contain a recognized partition table"), devname); ++ + dp = fdisk_new_script(sf->cxt); + if (!dp) + err(EXIT_FAILURE, _("failed to allocate dump struct")); + + rc = fdisk_script_read_context(dp, NULL); + if (rc) +- err(EXIT_FAILURE, _("failed to dump partition table")); ++ errx(EXIT_FAILURE, _("%s: failed to dump partition table"), devname); + + if (sf->json) + fdisk_script_enable_json(dp, 1); +-- +2.10.2 + diff --git a/abs/core/util-linux/0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch b/abs/core/util-linux/0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch new file mode 100644 index 0000000..4b088bb --- /dev/null +++ b/abs/core/util-linux/0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch @@ -0,0 +1,70 @@ +From fed304837f60b626f6198663990e76e506f89063 Mon Sep 17 00:00:00 2001 +From: Karel Zak <kzak@redhat.com> +Date: Tue, 29 Nov 2016 15:58:18 +0100 +Subject: [PATCH] sfdisk: don't be silent when list non-existing device + +Addresses: https://github.com/karelzak/util-linux/issues/376 +Signed-off-by: Karel Zak <kzak@redhat.com> +--- + disk-utils/sfdisk.c | 16 ++++++++++------ + 1 file changed, 10 insertions(+), 6 deletions(-) + +diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c +index 52f2a6d..0f69d65 100644 +--- a/disk-utils/sfdisk.c ++++ b/disk-utils/sfdisk.c +@@ -560,6 +560,7 @@ static int write_changes(struct sfdisk *sf) + */ + static int command_list_partitions(struct sfdisk *sf, int argc, char **argv) + { ++ int fail = 0; + fdisk_enable_listonly(sf->cxt, 1); + + if (argc) { +@@ -568,13 +569,14 @@ static int command_list_partitions(struct sfdisk *sf, int argc, char **argv) + for (i = 0; i < argc; i++) { + if (ct) + fputs("\n\n", stdout); +- if (print_device_pt(sf->cxt, argv[i], 0, sf->verify) == 0) +- ct++; ++ if (print_device_pt(sf->cxt, argv[i], 1, sf->verify) != 0) ++ fail++; ++ ct++; + } + } else + print_all_devices_pt(sf->cxt, sf->verify); + +- return 0; ++ return fail; + } + + /* +@@ -582,6 +584,7 @@ static int command_list_partitions(struct sfdisk *sf, int argc, char **argv) + */ + static int command_list_freespace(struct sfdisk *sf, int argc, char **argv) + { ++ int fail = 0; + fdisk_enable_listonly(sf->cxt, 1); + + if (argc) { +@@ -590,13 +593,14 @@ static int command_list_freespace(struct sfdisk *sf, int argc, char **argv) + for (i = 0; i < argc; i++) { + if (ct) + fputs("\n\n", stdout); +- if (print_device_freespace(sf->cxt, argv[i], 0) == 0) +- ct++; ++ if (print_device_freespace(sf->cxt, argv[i], 1) != 0) ++ fail++; ++ ct++; + } + } else + print_all_devices_freespace(sf->cxt); + +- return 0; ++ return fail; + } + + /* +-- +2.10.2 + diff --git a/abs/core/util-linux/0001-sfdisk-support-empty-label-use-case.patch b/abs/core/util-linux/0001-sfdisk-support-empty-label-use-case.patch new file mode 100644 index 0000000..29ab44d --- /dev/null +++ b/abs/core/util-linux/0001-sfdisk-support-empty-label-use-case.patch @@ -0,0 +1,223 @@ +From 35ca51182782193f555fbdcb06bb10766550d017 Mon Sep 17 00:00:00 2001 +From: Karel Zak <kzak@redhat.com> +Date: Wed, 30 Nov 2016 12:43:10 +0100 +Subject: [PATCH] sfdisk: support empty label use-case + +By default sfdisk creates partition table when a first partition is +specified, otherwise the device is not modified. This force users to +create at least one partition. + +This commit allows to create empty label without partitions if "label: +<name>" header line is specified by script. + +The commit also modifies "New situation:" output to list label name +and label identifier. + +Addresses: https://github.com/karelzak/util-linux/issues/374 +Signed-off-by: Karel Zak <kzak@redhat.com> +--- + disk-utils/fdisk-list.c | 23 +++++++++++++++-------- + disk-utils/fdisk-list.h | 1 + + disk-utils/sfdisk.8 | 18 +++++++++++++++++- + disk-utils/sfdisk.c | 17 +++++++++++++++++ + libfdisk/src/libfdisk.h.in | 1 + + libfdisk/src/libfdisk.sym | 5 +++++ + libfdisk/src/script.c | 20 +++++++++++++++++++- + 7 files changed, 75 insertions(+), 10 deletions(-) + +diff --git a/disk-utils/fdisk-list.c b/disk-utils/fdisk-list.c +index e6b2033..c9560f4 100644 +--- a/disk-utils/fdisk-list.c ++++ b/disk-utils/fdisk-list.c +@@ -34,10 +34,23 @@ static int is_ide_cdrom_or_tape(char *device) + return ret; + } + ++void list_disk_identifier(struct fdisk_context *cxt) ++{ ++ struct fdisk_label *lb = fdisk_get_label(cxt, NULL); ++ char *id = NULL; ++ ++ if (fdisk_has_label(cxt)) ++ fdisk_info(cxt, _("Disklabel type: %s"), ++ fdisk_label_get_name(lb)); ++ ++ if (!fdisk_is_details(cxt) && fdisk_get_disklabel_id(cxt, &id) == 0 && id) { ++ fdisk_info(cxt, _("Disk identifier: %s"), id); ++ free(id); ++ } ++} + + void list_disk_geometry(struct fdisk_context *cxt) + { +- char *id = NULL; + struct fdisk_label *lb = fdisk_get_label(cxt, NULL); + uint64_t bytes = fdisk_get_nsectors(cxt) * fdisk_get_sector_size(cxt); + char *strsz = size_to_human_string(SIZE_SUFFIX_SPACE +@@ -71,14 +84,8 @@ void list_disk_geometry(struct fdisk_context *cxt) + if (fdisk_get_alignment_offset(cxt)) + fdisk_info(cxt, _("Alignment offset: %lu bytes"), + fdisk_get_alignment_offset(cxt)); +- if (fdisk_has_label(cxt)) +- fdisk_info(cxt, _("Disklabel type: %s"), +- fdisk_label_get_name(lb)); + +- if (!fdisk_is_details(cxt) && fdisk_get_disklabel_id(cxt, &id) == 0 && id) { +- fdisk_info(cxt, _("Disk identifier: %s"), id); +- free(id); +- } ++ list_disk_identifier(cxt); + } + + void list_disklabel(struct fdisk_context *cxt) +diff --git a/disk-utils/fdisk-list.h b/disk-utils/fdisk-list.h +index eddab92..4ed5c25 100644 +--- a/disk-utils/fdisk-list.h ++++ b/disk-utils/fdisk-list.h +@@ -2,6 +2,7 @@ + #define UTIL_LINUX_FDISK_LIST_H + + extern void list_disklabel(struct fdisk_context *cxt); ++extern void list_disk_identifier(struct fdisk_context *cxt); + extern void list_disk_geometry(struct fdisk_context *cxt); + extern void list_freespace(struct fdisk_context *cxt); + +diff --git a/disk-utils/sfdisk.8 b/disk-utils/sfdisk.8 +index fcde872..efe4a86 100644 +--- a/disk-utils/sfdisk.8 ++++ b/disk-utils/sfdisk.8 +@@ -212,7 +212,10 @@ Deprecated option. Only the sector unit is supported. + .BR \-X , " \-\-label " \fItype + Specify the disk label type (e.g. \fBdos\fR, \fBgpt\fR, ...). If this option + is not given, then \fBsfdisk\fR defaults to the existing label, but if there +-is no label on the device yet, then the type defaults to \fBdos\fR. ++is no label on the device yet, then the type defaults to \fBdos\fR. The default ++or the current label may be overwritten by the "label: <name>" script header ++line. The option \fB\-\-label\fR does not force \fBsfdisk\fR to create empty ++disk label (see the \fBEMPTY DISK LABEL\fR section below). + .TP + .BR \-Y , " \-\-label\-nested " \fItype + Force editing of a nested disk label. The primary disk label has to exist already. +@@ -404,6 +407,19 @@ For backward compatibility the \fBId=\fR field has the same meaning. + .RE + .RE + ++.SH "EMPTY DISK LABEL" ++.B sfdisk ++does not create partition table without partitions by default. The lines with ++partitions are expected in the script by default. The empty partition table has ++to be explicitly requested by "label: <name>" script header line without any ++partitions lines. For example: ++.RS ++.sp ++.B "echo 'label: gpt' | sfdisk /dev/sdb" ++.sp ++.RE ++creates empty GPT partition table. Note that the \fB\-\-append\fR disables this feature. ++ + .SH "BACKING UP THE PARTITION TABLE" + It is recommended to save the layout of your devices. + .B sfdisk +diff --git a/disk-utils/sfdisk.c b/disk-utils/sfdisk.c +index 10307ad..2d65974 100644 +--- a/disk-utils/sfdisk.c ++++ b/disk-utils/sfdisk.c +@@ -1766,8 +1766,25 @@ static int command_fdisk(struct sfdisk *sf, int argc, char **argv) + } + } while (1); + ++ /* create empty disk label if label, but no partition specified */ ++ if (rc == SFDISK_DONE_EOF && created == 0 ++ && fdisk_script_has_force_label(dp) == 1 ++ && fdisk_table_get_nents(tb) == 0 ++ && fdisk_script_get_header(dp, "label")) { ++ ++ int xrc = fdisk_apply_script_headers(sf->cxt, dp); ++ created = !xrc; ++ if (xrc) { ++ fdisk_warnx(sf->cxt, _( ++ "Failed to apply script headers, " ++ "disk label not created.")); ++ rc = SFDISK_DONE_ABORT; ++ } ++ } ++ + if (!sf->quiet && rc != SFDISK_DONE_ABORT) { + fdisk_info(sf->cxt, _("\nNew situation:")); ++ list_disk_identifier(sf->cxt); + list_disklabel(sf->cxt); + } + +diff --git a/libfdisk/src/libfdisk.h.in b/libfdisk/src/libfdisk.h.in +index 9154f5b..59cce19 100644 +--- a/libfdisk/src/libfdisk.h.in ++++ b/libfdisk/src/libfdisk.h.in +@@ -642,6 +642,7 @@ const char *fdisk_script_get_header(struct fdisk_script *dp, const char *name); + int fdisk_script_set_header(struct fdisk_script *dp, const char *name, const char *data); + struct fdisk_table *fdisk_script_get_table(struct fdisk_script *dp); + int fdisk_script_get_nlines(struct fdisk_script *dp); ++int fdisk_script_has_force_label(struct fdisk_script *dp); + + int fdisk_script_set_userdata(struct fdisk_script *dp, void *data); + void *fdisk_script_get_userdata(struct fdisk_script *dp); +diff --git a/libfdisk/src/libfdisk.sym b/libfdisk/src/libfdisk.sym +index 02cd7a8..d6d4ac5 100644 +--- a/libfdisk/src/libfdisk.sym ++++ b/libfdisk/src/libfdisk.sym +@@ -274,3 +274,8 @@ FDISK_2.29 { + fdisk_labelitem_is_number; + fdisk_gpt_set_npartitions; + } FDISK_2.28; ++ ++ ++FDISK_2.30 { ++ fdisk_script_has_force_label; ++} FDISK_2.29; +diff --git a/libfdisk/src/script.c b/libfdisk/src/script.c +index ae7e99a..0d1f260 100644 +--- a/libfdisk/src/script.c ++++ b/libfdisk/src/script.c +@@ -36,7 +36,8 @@ struct fdisk_script { + size_t nlines; + struct fdisk_label *label; + +- unsigned int json : 1; /* JSON output */ ++ unsigned int json : 1, /* JSON output */ ++ force_label : 1; /* label: <name> specified */ + }; + + +@@ -354,6 +355,22 @@ int fdisk_script_get_nlines(struct fdisk_script *dp) + } + + /** ++ * fdisk_script_has_force_label: ++ * @dp: script ++ * ++ * Note that fdisk_script_set_header(dp, "label", name) does not modify ++ * force_label status. The label has to be specified by script. ++ * ++ * Returns: true if "label: <name>" has been parsed. ++ */ ++int fdisk_script_has_force_label(struct fdisk_script *dp) ++{ ++ assert(dp); ++ return dp->force_label; ++} ++ ++ ++/** + * fdisk_script_read_context: + * @dp: script + * @cxt: context +@@ -706,6 +723,7 @@ static int parse_line_header(struct fdisk_script *dp, char *s) + if (strcmp(name, "label") == 0) { + if (dp->cxt && !fdisk_get_label(dp->cxt, value)) + goto done; /* unknown label name */ ++ dp->force_label = 1; + } else if (strcmp(name, "unit") == 0) { + if (strcmp(value, "sectors") != 0) + goto done; /* only "sectors" supported */ +-- +2.10.2 + diff --git a/abs/core/util-linux/PKGBUILD b/abs/core/util-linux/PKGBUILD index 64faa1a..72df84c 100644 --- a/abs/core/util-linux/PKGBUILD +++ b/abs/core/util-linux/PKGBUILD @@ -5,7 +5,8 @@ pkgbase=util-linux pkgname=(util-linux libutil-linux) -pkgver=2.27.1 +_pkgmajor=2.29 +pkgver=${_pkgmajor} pkgrel=1 pkgdesc="Miscellaneous system utilities for Linux" url="https://www.kernel.org/pub/linux/utils/util-linux/" @@ -14,13 +15,33 @@ makedepends=('systemd' 'python2') license=('GPL2') options=('strip' 'debug') validpgpkeys=('B0C64D14301CC6EFAEDF60E4E4B71D5EEC39C284') # Karel Zak -source=("https://www.kernel.org/pub/linux/utils/util-linux/v${pkgver%.?}/$pkgbase-$pkgver.tar."{xz,sign} - pam-{login,common,su}) -md5sums=('3cd2698d1363a2c64091c2dadc974647' +source=("https://www.kernel.org/pub/linux/utils/util-linux/v$_pkgmajor/$pkgbase-$pkgver.tar."{xz,sign} + pam-{login,common,su} + '0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch' + '0001-sfdisk-cleanup-dump-error-messages.patch' + '0001-sfdisk-support-empty-label-use-case.patch' + '0001-chrt-default-to-SCHED_RR-policy.patch' + '0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch') +md5sums=('07b6845f48a421ad5844aa9d58edb837' 'SKIP' '4368b3f98abd8a32662e094c54e7f9b1' 'a31374fef2cba0ca34dfc7078e2969e4' - 'fa85e5cce5d723275b14365ba71a8aad') + 'fa85e5cce5d723275b14365ba71a8aad' + '3fce7192ce1b3d97fdffd0226ed63a90' + '2f3c061865360170cacda948035fd02d' + '6d2e3915124938577f0ff18ef701c87f' + '168c1cb2cfe7d4eddfc6e3f3b19d3ced' + '68c2076a9a09564ba0c9776540a175fa') + +prepare() { + cd "$pkgbase-$pkgver" + + patch -Np1 <../0001-sfdisk-don-t-be-silent-when-list-non-existing-device.patch + patch -Np1 <../0001-sfdisk-cleanup-dump-error-messages.patch + patch -Np1 <../0001-sfdisk-support-empty-label-use-case.patch + patch -Np1 <../0001-chrt-default-to-SCHED_RR-policy.patch + patch -Np1 <../0001-lsns-Fix-parser-for-proc-pid-stat-which-is-including.patch +} build() { cd "$pkgbase-$pkgver" @@ -36,7 +57,7 @@ build() { --enable-chfn-chsh \ --enable-write \ --enable-mesg \ - --enable-libmount-force-mountinfo \ + --disable-tailf \ --with-python=2 make @@ -80,6 +101,12 @@ package_util-linux() { ### runtime libs are shipped as part of libutil-linux rm "$pkgdir"/usr/lib/lib*.{a,so}* + + ### tailf has been deprecated for a while. let's not include it anymore. + rm \ + "$pkgdir"/usr/bin/tailf \ + "$pkgdir"/usr/share/bash-completion/completions/tailf \ + "$pkgdir"/usr/share/man/man1/tailf.1 } package_libutil-linux() { diff --git a/abs/core/which/PKGBUILD b/abs/core/which/PKGBUILD index 65495fe..3df51e9 100644 --- a/abs/core/which/PKGBUILD +++ b/abs/core/which/PKGBUILD @@ -1,27 +1,31 @@ -# $Id: PKGBUILD 142082 2011-11-04 23:36:20Z allan $ -# Maintainer: Allan McRae <allan@archlinux.org> +# $Id$ +# Maintainer: Sébastien Luttringer <seblu@archlinux.org> +# Contributor: Allan McRae <allan@archlinux.org> # Contributor: Andreas Radke <andyrtr@archlinux.org> pkgname=which -pkgver=2.20 -pkgrel=5 -pkgdesc="A utility to show the full path of commands" +pkgver=2.21 +pkgrel=2 +pkgdesc='A utility to show the full path of commands' arch=('i686' 'x86_64') -url="http://www.xs4all.nl/~carlo17/which" +url='https://savannah.gnu.org/projects/which/' license=('GPL3') -groups=('base') -depends=('glibc' 'sh') -install=which.install -source=(http://www.xs4all.nl/~carlo17/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('95be0501a466e515422cde4af46b2744') +groups=('base' 'base-devel') +depends=('glibc' 'bash') +# gpg key is using deprecated md5 algo, do not use +# check if a new one is issued in the next release +source=("https://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz") +md5sums=('097ff1a324ae02e0a3b0369f07a7544a') build() { - cd $srcdir/$pkgname-$pkgver + cd $pkgname-$pkgver ./configure --prefix=/usr make } package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR=$pkgdir install + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install } + +# vim:set ts=2 sw=2 et: diff --git a/abs/core/which/which.install b/abs/core/which/which.install deleted file mode 100644 index 167e250..0000000 --- a/abs/core/which/which.install +++ /dev/null @@ -1,20 +0,0 @@ -infodir=/usr/share/info -filelist=(which.info) - -post_install() { - [ -x usr/bin/install-info ] || return 0 - for file in ${filelist[@]}; do - install-info $infodir/$file.gz $infodir/dir 2> /dev/null - done -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - [ -x usr/bin/install-info ] || return 0 - for file in ${filelist[@]}; do - install-info --delete $infodir/$file $infodir/dir 2> /dev/null - done -} diff --git a/abs/core/xymon/PKGBUILD b/abs/core/xymon/PKGBUILD index 787ce61..e69afd4 100755 --- a/abs/core/xymon/PKGBUILD +++ b/abs/core/xymon/PKGBUILD @@ -1,42 +1,45 @@ pkgbase=xymon pkgname=('xymonserver' 'xymonclient') -pkgver=4.3.17 -pkgrel=23 +pkgver=4.3.28 +pkgrel=1 pkgdesc="Xymon is a system for monitoring of hosts and networks" -license="GPL" +license=('GPL') arch=('i686' 'x86_64') url="http://www.xymon.com/" source=("https://downloads.sourceforge.net/project/xymon/Xymon/$pkgver/$pkgbase-$pkgver.tar.gz" - 'hobbitadd.py' - 'xymon_ghost_check' - 'graphs.cfg.diff' - 'xymonserver.cfg.diff' - 'tasks.d.mv' + 'alerts.cfg' + 'analysis.cfg.patch' + 'be.png' 'tuner.png' 'tv.png' 'clientlaunch.cfg.patch' - 'hobbitstorage.py' - 'hbnotes.py' - 'hobbit-myth-orphan.sh' - 'analysis.cfg' + 'client-local.cfg.patch' + 'graphs.cfg.diff' 'hbfunc.py' - 'be.png' 'tuner.png' 'tv.png' - 'hobbit-mem-myth.sh' + 'hbnotes.py' 'hobbit_notify.sh' - 'login_notify.sh' - 'alerts.cfg' + 'hobbit-mem-myth.sh' + 'hobbit-myth-orphan.sh' 'hobbit_myth_data.py' + 'hobbitadd.py' + 'hobbitstorage.py' + 'hosts.cfg.patch' + 'log_list.sh' + 'led_themes.tar.gz' + 'login_notify.sh' + 'logrotate-server.xymon' + 'logrotate-client.xymon' + 'tasks.d.mv' + 'xymon_ghost_check' 'xymon-gputemp.sh' 'xymon-hddtemp.sh' 'xymon-smart.sh' - 'logrotate-server.xymon' - 'logrotate-client.xymon' - 'log_list.sh' - 'client-local.cfg.patch' - 'led_themes.tar.gz' + 'xymon-server.include' + 'xymon-server.gen_light_conf.d' + 'xymonserver.cfg.diff' 'xymon-server.rules' 'xymon-client.rules' - 'hosts.cfg.patch') + ) depends=('rrdtool' 'fping' 'pcre' 'python2' 'graphviz' 'smartmontools') -install=xymon.install +install=xymon-server.install build() { cd ${srcdir}/xymon-$pkgver @@ -58,6 +61,7 @@ build() { MANROOT=/usr/share/man \ BARS=all \ USENEWHIST=y \ + USEXYMONPING=n \ PIXELCOUNT=960 \ INSTALLBINDIR=/home/xymon/server/bin \ INSTALLETCDIR=/home/xymon/etc \ @@ -88,7 +92,6 @@ package_xymonserver(){ install -D -m755 ${srcdir}/xymon-smart.sh ${pkgdir}/home/xymon/server/ext/xymon-smart.sh install -D -m755 ${srcdir}/log_list.sh ${pkgdir}/home/xymon/client/bin/log_list.sh - install -m755 analysis.cfg ${pkgdir}/home/xymon/etc/analysis.cfg cat alerts.cfg >> ${pkgdir}/home/xymon/etc/alerts.cfg install -m755 hobbit_notify.sh ${pkgdir}/home/xymon/server/bin/hobbit_notify.sh @@ -115,6 +118,7 @@ package_xymonserver(){ cd ${pkgdir}/home/xymon/etc patch -p0 < ${srcdir}/graphs.cfg.diff || return 1 patch -p0 < ${srcdir}/xymonserver.cfg.diff || return 1 + patch -p0 < ${srcdir}/analysis.cfg.patch || return 1 patch -p3 < ${srcdir}/client-local.cfg.patch || return 1 patch -p3 < ${srcdir}/hosts.cfg.patch || return 1 @@ -126,9 +130,20 @@ package_xymonserver(){ echo "myth_mtc;The <b>myth_mtc</b> column shows the status of the MythTV maintenance script.;" >> $COLDOC echo "orphan;The <b>orphan</b> column shows the status of the find_orphans.py script.;" >> $COLDOC + #move cgiwrap to same partiton as hobbit-cgi and hobbit-seccgi + #because pacman is not able to install hardlinks accross partitions + mv ${pkgdir}/home/xymon/server/bin/cgiwrap ${pkgdir}/data/srv/httpd/htdocs/xymon/ + + #install conf files for lighttpd + mkdir -p ${pkgdir}/etc/lighttpd + install -D -m 644 ${srcdir}/xymon-server.include ${pkgdir}/etc/lighttpd/ + #gen_light_conf + install -D -m 744 ${srcdir}/xymon-server.gen_light_conf.d ${pkgdir}/etc/gen_light_conf.d/xymon-server.conf + #fix permissions - chmod 775 ${pkgdir}/data/srv/httpd/htdocs/ + chmod 755 ${pkgdir}/data/srv/httpd/htdocs/ chmod 775 ${pkgdir}/data/srv/httpd/htdocs/xymon/ + chmod 755 ${pkgdir}/data/srv/httpd/htdocs/xymon/cgiwrap chmod 775 ${pkgdir}/data/srv/httpd/htdocs/xymon/notes/ chmod 775 ${pkgdir}/data/srv/httpd/htdocs/xymon/gifs/ chmod 775 ${pkgdir}/data/srv/httpd/htdocs/xymon/snap/ @@ -160,34 +175,36 @@ package_xymonclient(){ cd - } -md5sums=('d8d119a777e7b7204d1292fb27314312' - 'a0fbb9cbeb3600a40943e6205790f22f' - 'c60b0d59bb39505ee3d62c6dd65429c5' - '92bd5e8279c688fd854d514443bc733c' - 'f0fca78520f434918bd1be717d165073' - 'a19c8c546dcd95049476bb19f9d4e3ae' - 'c9a31ea9ae131fb351db913e922c25aa' - 'b2f98ac0df013332deedc1efae0a270d' - 'df77d1de72157d23a301a72288fbf7e5' - '2a509d81ee1655130ce40bf970719e0a' - '166279c006c3ef7bf0c21537cf89fc83' - '80d9cfac86c6d96836e6f406e35e7cf5' +md5sums=('14501ab2cfce9a332c1590543dfcbd0f' + '9af2ad60ac4c3cb653754618f603e311' + '77fd7ab6ebbe72d14092ee53c5958f97' 'd210c43fb9ee9ad6cd7648e0c2e0efea' '0c808fa12672289f86b0651545381308' '0469d775db9fdd18ea95dd41937ada82' - '0757294eec13771f8e63da23cf066796' + 'c9a31ea9ae131fb351db913e922c25aa' + '31ac5c1f6dcc9408b64c4107b325a9a6' + '92bd5e8279c688fd854d514443bc733c' + '80d9cfac86c6d96836e6f406e35e7cf5' + 'df77d1de72157d23a301a72288fbf7e5' 'b1d5592fa92ef71303621964e84c2b9e' - '22d4c9065fd959efe82f121dcb511305' - '9af2ad60ac4c3cb653754618f603e311' + '0757294eec13771f8e63da23cf066796' + '2a509d81ee1655130ce40bf970719e0a' '313b11e7a22c3c08fb2afaadbfb46d87' + 'a0fbb9cbeb3600a40943e6205790f22f' + 'b2f98ac0df013332deedc1efae0a270d' + '606f535a49f32b35802ed9d46bd7d068' + '98e9242ae346f729b14cb195786571f2' + 'c7178bbf384bbe86c318b60fef6faf10' + '22d4c9065fd959efe82f121dcb511305' + 'b4e8641e97e6b689dbc634af785e6799' + 'e2844513e2c92e8b5084818f3b2a478d' + 'a19c8c546dcd95049476bb19f9d4e3ae' + 'c60b0d59bb39505ee3d62c6dd65429c5' '6452d891d88bb46d07bcf7790a523ad0' 'b49e7de696c1a0678ad198bab926266c' 'e071c387deac6b896b20db19903b7794' - 'b4e8641e97e6b689dbc634af785e6799' - 'e2844513e2c92e8b5084818f3b2a478d' - '98e9242ae346f729b14cb195786571f2' - '31ac5c1f6dcc9408b64c4107b325a9a6' - 'c7178bbf384bbe86c318b60fef6faf10' - '2871c53627e9e125922118013a868a95' - 'cdfbca43dbae4ce0ca72dd002ec22af1' - '606f535a49f32b35802ed9d46bd7d068') + '1a00c0b9b9b1a37f1513fa8489ce9d31' + '3d1f311f0142f41d763276302a7ce396' + 'c75c434ba9c39a914e7693004b580554' + 'e9dbff011e57861266d27dfdf465a4b3' + 'cdfbca43dbae4ce0ca72dd002ec22af1') diff --git a/abs/core/xymon/analysis.cfg b/abs/core/xymon/analysis.cfg deleted file mode 100644 index 460d157..0000000 --- a/abs/core/xymon/analysis.cfg +++ /dev/null @@ -1,445 +0,0 @@ -# analysis.cfg - configuration file for clients reporting to Xymon -# -# This file is used by the xymond_client module, when it builds the -# cpu, disk, files, memory, msgs and procs status messages from the -# information reported by clients running on the monitored systems. -# -# This file must be installed on the Xymon server - client installations -# do not need this file. -# -# The file defines a series of rules: -# UP : Changes the "cpu" status when the system has rebooted recently, -# or when it has been running for too long. -# LOAD : Changes the "cpu" status according to the system load. -# CLOCK : Changes the "cpu" status if the client system clock is -# not synchronized with the clock of the Xymon server. -# DISK : Changes the "disk" status, depending on the amount of space -# used of filesystems. -# MEMPHYS: Changes the "memory" status, based on the percentage of real -# memory used. -# MEMACT : Changes the "memory" status, based on the percentage of "actual" -# memory used. Note: Not all systems report an "actual" value. -# MEMSWAP: Changes the "memory" status, based on the percentage of swap -# space used. -# PROC : Changes the "procs" status according to which processes were found -# in the "ps" listing from the client. -# LOG : Changes the "msgs" status according to entries in text-based logfiles. -# Note: The "client-local.cfg" file controls which logfiles the client will report. -# FILE : Changes the "files" status according to meta-data for files. -# Note: The "client-local.cfg" file controls which files the client will report. -# DIR : Changes the "files" status according to the size of a directory. -# Note: The "client-local.cfg" file controls which directories the client will report. -# PORT : Changes the "ports" status according to which tcp ports were found -# in the "netstat" listing from the client. -# DEFAULT: Set the default values that apply if no other rules match. -# -# All rules can be qualified so they apply only to certain hosts, or on certain -# times of the day (see below). -# -# Each type of rule takes a number of parameters: -# UP bootlimit toolonglimit -# The cpu status goes yellow if the system has been up for less than -# "bootlimit" time, or longer than "toolonglimit". The time is in -# minutes, or you can add h/d/w for hours/days/weeks - eg. "2h" for -# two hours, or "4w" for 4 weeks. -# Defaults: bootlimit=1h, toolonglimit=-1 (infinite). -# -# LOAD warnlevel paniclevel -# If the system load exceeds "warnlevel" or "paniclevel", the "cpu" -# status will go yellow or red, respectively. These are decimal -# numbers. -# Defaults: warnlevel=5.0, paniclevel=10.0 -# -# CLOCK maximum-offset -# If the system clock of the client differs from that of the Xymon -# server by more than "maximum-offset" seconds, then the CPU status -# column will go yellow. Note that the accuracy of this test is limited, -# since it is affected by the time it takes a client status report to -# go from the client to the Xymon server and be processed. You should -# therefore allow for a few seconds (5-10) of slack when you define -# your max. offset. -# It is not wise to use this test, unless your servers are synchronized -# to a common clock, e.g. through NTP. -# -# DISK filesystem warnlevel paniclevel -# DISK filesystem IGNORE -# If the utilization of "filesystem" is reported to exceed "warnlevel" -# or "paniclevel", the "disk" status will go yellow or red, respectively. -# "warnlevel" and "paniclevel" are either the percentage used, or the -# space available as reported by the local "df" command on the host. -# For the latter type of check, the "warnlevel" must be followed by the -# letter "U", e.g. "1024U". -# The special keyword "IGNORE" causes this filesystem to be ignored -# completely, i.e. it will not appear in the "disk" status column and -# it will not be tracked in a graph. This is useful for e.g. removable -# devices, backup-disks and similar hardware. -# "filesystem" is the mount-point where the filesystem is mounted, e.g. -# "/usr" or "/home". A filesystem-name that begins with "%" is interpreted -# as a Perl-compatible regular expression; e.g. "%^/oracle.*/" will match -# any filesystem whose mountpoint begins with "/oracle". -# Defaults: warnlevel=90%, paniclevel=95% -# -# MEMPHYS warnlevel paniclevel -# MEMACT warnlevel paniclevel -# MEMSWAP warnlevel paniclevel -# If the memory utilization exceeds the "warnlevel" or "paniclevel", the -# "memory" status will change to yellow or red, respectively. -# Note: The words "PHYS", "ACT" and "SWAP" are also recognized. -# Defaults: MEMPHYS warnlevel=100 paniclevel=101 (i.e. it will never go red) -# MEMSWAP warnlevel=50 paniclevel=80 -# MEMACT warnlevel=90 paniclevel=97 -# -# PROC processname minimumcount maximumcount color [TRACK=id] [TEXT=displaytext] -# The "ps" listing sent by the client will be scanned for how many -# processes containing "processname" are running, and this is then -# matched against the min/max settings defined here. If the running -# count is outside the thresholds, the color of the "procs" status -# changes to "color". -# To check for a process that must NOT be running: Set minimum and -# maximum to 0. -# -# "processname" can be a simple string, in which case this string must -# show up in the "ps" listing as a command. The scanner will find -# a ps-listing of e.g. "/usr/sbin/cron" if you only specify "processname" -# as "cron". -# "processname" can also be a Perl-compatiable regular expression, e.g. -# "%java.*inst[0123]" can be used to find entries in the ps-listing for -# "java -Xmx512m inst2" and "java -Xmx256 inst3". In that case, -# "processname" must begin with "%" followed by the reg.expression. -# If "processname" contains whitespace (blanks or TAB), you must enclose -# the full string in double quotes - including the "%" if you use regular -# expression matching. E.g. -# PROC "%xymond_channel --channel=data.*xymond_rrd" 1 1 yellow -# or -# PROC "java -DCLASSPATH=/opt/java/lib" 2 5 -# -# You can have multiple "PROC" entries for the same host, all of the -# checks are merged into the "procs" status and the most severe -# check defines the color of the status. -# -# The TRACK=id option causes the number of processes found to be recorded -# in an RRD file, with "id" as part of the filename. This graph will then -# appear on the "procs" page as well as on the "trends" page. Note that -# "id" must be unique among the processes tracked for each host. -# -# The TEXT=displaytext option affects how the process appears on the -# "procs" status page. By default, the process is listed with the -# "processname" as identification, but if this is a regular expression -# it may be a bit difficult to understand. You can then use e.g. -# "TEXT=Apache" to make these processes appear with the name "Apache" -# instead. -# -# Defaults: mincount=1, maxcount=-1 (unlimited), color="red". -# Note: No processes are checked by default. -# -# Example: Check that "cron" is running: -# PROC cron -# Example: Check that at least 5 "httpd" processes are running, but -# not more than 20: -# PROC httpd 5 20 -# -# LOG filename match-pattern [COLOR=color] [IGNORE=ignore-pattern] [TEXT=displaytext] -# In the "client-local.cfg" file, you can list any number of files -# that the client will collect log data from. These are sent to the -# Xymon server together with the other client data, and you can then -# choose how to analyze the log data with LOG entries. -# -# ************ IMPORTANT *************** -# To monitor a logfile, you *MUST* configure both client-local.cfg -# and analysis.cfg. If you configure only the client-local.cfg -# file, the client will collect the log data and you can view it in -# the "client data" display, but it will not affect the color of the -# "msgs" status. On the other hand, if you configure only the -# analysis.cfg file, then there will be no log data to inspect, -# and you will not see any updates of the "msgs" status either. -# -# "filename" is a filename or pattern. The set of files reported by -# the client is matched against "filename", and if they match then -# this LOG entry is processed against the data from a file. -# -# "match-pattern": The log data is matched against this pattern. If -# there is a match, this log file causes a status change to "color". -# -# "ignore-pattern": The log data that matched "match-pattern" is also -# matched against "ignore-pattern". If the data matches the "ignore-pattern", -# this line of data does not affect the status color. In other words, -# the "ignore-pattern" can be used to refine the strings which cause -# a match. -# Note: The "ignore-pattern" is optional. -# -# "color": The color which this match will trigger. -# Note: "color" is optional, if omitted then "red" will be used. -# -# Example: Go yellow if the text "WARNING" shows up in any logfile. -# LOG %.* WARNING COLOR=yellow -# -# Example: Go red if the text "I/O error" or "read error" appears. -# LOG %/var/(adm|log)/messages %(I/O|read).error COLOR=red -# -# FILE filename [color] [things to check] [TRACK] -# NB: The files you wish to monitor must be listed in a "file:..." -# entry in the client-local.cfg file, in order for the client to -# report any data about them. -# -# "filename" is a filename or pattern. The set of files reported by -# the client is matched against "filename", and if they match then -# this FILE entry is processed against the data from that file. -# -# [things to check] can be one or more of the following: -# - "NOEXIST" triggers a warning if the file exists. By default, -# a warning is triggered for files that have a FILE entry, but -# which do not exist. -# - "TYPE=type" where "type" is one of "file", "dir", "char", "block", -# "fifo", or "socket". Triggers warning if the file is not of the -# specified type. -# - "OWNERID=owner" and "GROUPID=group" triggers a warning if the owner -# or group does not match what is listed here. "owner" and "group" is -# specified either with the numeric uid/gid, or the user/group name. -# - "MODE=mode" triggers a warning if the file permissions are not -# as listed. "mode" is written in the standard octal notation, e.g. -# "644" for the rw-r--r-- permissions. -# - "SIZE<max.size" and "SIZE>min.size" triggers a warning it the file -# size is greater than "max.size" or less than "min.size", respectively. -# You can append "K" (KB), "M" (MB), "G" (GB) or "T" (TB) to the size. -# If there is no such modifier, KB is assumed. -# E.g. to warn if a file grows larger than 1MB (1024 KB): "SIZE<1M". -# - "SIZE=size" triggers a warning it the file size is not what is listed. -# - "MTIME>min.mtime" and "MTIME<max.mtime" checks how long ago the file -# was last modified (in seconds). E.g. to check if a file was updated -# within the past 10 minutes (600 seconds): "MTIME<600". Or to check -# that a file has NOT been updated in the past 24 hours: "MTIME>86400". -# - "MTIME=timestamp" checks if a file was last modified at "timestamp". -# "timestamp" is a unix epoch time (seconds since midnight Jan 1 1970 UTC). -# - "CTIME>min.ctime", "CTIME<max.ctime", "CTIME=timestamp" acts as the -# mtime checks, but for the ctime timestamp (when the files' directory -# entry was last changed, eg. by chown, chgrp or chmod). -# - "MD5=md5sum", "SHA1=sha1sum", "RMD160=rmd160sum" trigger a warning -# if the file checksum using the MD5, SHA1 or RMD160 message digest -# algorithms do not match the one configured here. Note: The "file" -# entry in the client-local.cfg file must specify which algorithm to use. -# -# "TRACK" causes the size of this file to be tracked in an RRD file, and -# shown on the graph on the "files" display. -# -# Example: Check that the /var/log/messages file is not empty and was updated -# within the past 10 minutes, and go yellow if either fails: -# FILE /var/log/messages SIZE>0 MTIME<600 yellow -# -# Example: Check the timestamp, size and SHA-1 hash of the /bin/sh program: -# FILE /bin/sh MTIME=1128514608 SIZE=645140 SHA1=5bd81afecf0eb93849a2fd9df54e8bcbe3fefd72 -# -# DIR directory [color] [SIZE<maxsize] [SIZE>minsize] [TRACK] -# NB: The directories you wish to monitor must be listed in a "dir:..." -# entry in the client-local.cfg file, in order for the client to -# report any data about them. -# -# "directory" is a filename or pattern. The set of directories reported by -# the client is matched against "directory", and if they match then -# this DIR entry is processed against the data for that directory. -# -# "SIZE<maxsize" and "SIZE>minsize" defines the size limits that the -# directory must stay within. If it goes outside these limits, a warning -# will trigger. Note the Xymon uses the raw number reported by the -# local "du" command on the client. This is commonly KB, but it may be -# disk blocks which are often 512 bytes. -# -# "TRACK" causes the size of this directory to be tracked in an RRD file, -# and shown on the graph on the "files" display. -# -# PORT [LOCAL=addr] [EXLOCAL=addr] [REMOTE=addr] [EXREMOTE=addr] [STATE=state] [EXSTATE=state] [MIN=mincount] [MAX=maxcount] [COLOR=color] [TRACK=id] [TEXT=displaytext] -# The "netstat" listing sent by the client will be scanned for how many -# sockets match the criteria listed. -# "addr" is a (partial) address specification in the format used on -# the output from netstat. This is typically "10.0.0.1:80" for the IP -# 10.0.0.1, port 80. Or "*:80" for any local address, port 80. -# NB: The Xymon clients normally report only the numeric data for -# IP-adresses and port-numbers, so you must specify the port -# number (e.g. "80") instead of the service name ("www"). -# "state" causes only the sockets in the specified state to be included; -# it is usually LISTEN or ESTABLISHED. -# The socket count is then matched against the min/max settings defined -# here. If the count is outside the thresholds, the color of the "ports" -# status changes to "color". -# To check for a socket that must NOT exist: Set minimum and -# maximum to 0. -# -# "addr" and "state" can be a simple strings, in which case these string must -# show up in the "netstat" at the appropriate column. -# "addr" and "state" can also be a Perl-compatiable regular expression, e.g. -# "LOCAL=%(:80|:443)" can be used to find entries in the netstat local port for -# both http (port 80) and https (port 443). In that case, portname or state must -# begin with "%" followed by the reg.expression. -# -# The TRACK=id option causes the number of sockets found to be recorded -# in an RRD file, with "id" as part of the filename. This graph will then -# appear on the "ports" page as well as on the "trends" page. Note that -# "id" must be unique among the ports tracked for each host. -# -# The TEXT=displaytext option affects how the port appears on the -# "ports" status page. By default, the port is listed with the -# local/remote/state rules as identification, but this may be somewhat -# difficult to understand. You can then use e.g. "TEXT=Secure Shell" to make -# these ports appear with the name "Secure Shell" instead. -# -# Defaults: state="LISTEN", mincount=1, maxcount=-1 (unlimited), color="red". -# Note: No ports are checked by default. -# -# Example: Check that there is someone listening on the https port: -# PORT "LOCAL=%([.:]443)$" state=LISTEN TEXT=https -# -# Example: Check that at least 5 "ssh" connections are established, but -# not more than 10; warn but do not error; graph the connection count: -# PORT "LOCAL=%([.:]22)$" state=ESTABLISHED min=5 max=20 color=yellow TRACK=ssh "TEXT=SSH logins" -# -# Example: Check that ONLY ports 22, 80 and 443 are open for incoming connections: -# PORT STATE=LISTEN LOCAL=%0.0.0.0[.:].* EXLOCAL=%[.:](22|80|443)$ MAX=0 "TEXT=Bad listeners" -# -# -# To apply rules to specific hosts, you can use the "HOST=", "EXHOST=", "PAGE=" -# "EXPAGE=", "CLASS=" or "EXCLASS=" qualifiers. (These act just as in the -# alerts.cfg file). -# -# Hostnames are either a comma-separated list of hostnames (from the hosts.cfg file), -# "*" to indicate "all hosts", or a Perl-compatible regular expression. -# E.g. "HOST=dns.foo.com,www.foo.com" identifies two specific hosts; -# "HOST=%www.*.foo.com EXHOST=www-test.foo.com" matches all hosts with a name -# beginning with "www", except the "www-test" host. -# "PAGE" and "EXPAGE" match the hostnames against the page on where they are -# located in the hosts.cfg file, via the hosts' page/subpage/subparent -# directives. This can be convenient to pick out all hosts on a specific page. -# -# Rules can be dependant on time-of-day, using the standard Xymon syntax -# (the hosts.cfg(5) about the NKTIME parameter). E.g. "TIME=W:0800:2200" -# applied to a rule will make this rule active only on week-days between -# 8AM and 10PM. -# -# You can also associate a GROUP id with a rule. The group-id is passed to -# the alert module, which can then use it to control who gets an alert when -# a failure occurs. E.g. the following associates the "httpd" process check -# with the "web" group, and the "sshd" check with the "admins" group: -# PROC httpd ?5 GROUP=web -# PROC sshd 1 GROUP=admins -# In the alerts.cfg file, you could then have rules like -# GROUP=web -# MAIL webmaster@foo.com -# GROUP=admins -# MAIL root@foo.com -# -# Qualifiers must be placed after each rule, e.g. -# LOAD 8.0 12.0 HOST=db.foo.com TIME=*:0800:1600 -# -# If you have multiple rules that you want to apply the same qualifiers to, -# you can write the qualifiers *only* on one line, followed by the rules. E.g. -# HOST=%db.*.foo.com TIME=W:0800:1600 -# LOAD 8.0 12.0 -# DISK /db 98 100 -# PROC mysqld 1 -# will apply the three rules to all of the "db" hosts on week-days between 8AM -# and 4PM. This can be combined with per-rule qualifiers, in which case the -# per-rule qualifier overrides the general qualifier; e.g. -# HOST=%.*.foo.com -# LOAD 7.0 12.0 HOST=bax.foo.com -# LOAD 3.0 8.0 -# will result in the load-limits being 7.0/12.0 for the "bax.foo.com" host, -# and 3.0/8.0 for all other foo.com hosts. -# -# The special DEFAULT section can modify the built-in defaults - this must -# be placed at the end of the file. - - -HOST=_MASTERBACKEND_ - PROC sshd 1 - PROC lighttpd - PROC xymond - PROC crond - PROC mysql - PROC mythbackend - PROC msg_daemon.py - DISK %^/cdrom.* IGNORE - DISK %^/mnt.* IGNORE - DISK %^/media.* IGNORE - DISK * 95 99 - PORT "LOCAL=%([.:]80)$" state=LISTEN TEXT=http - PORT "LOCAL=%([.:]1337)$" state=LISTEN TEXT=cgi - PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh - -HOST=_MASTERFRONTEND_ - PROC mythfrontend 1 5 yellow - PROC sshd 1 - PROC lighttpd - PROC xymond - PROC crond - PROC mysql - PROC mythbackend - PROC msg_daemon.py - DISK %^/cdrom.* IGNORE - DISK %^/mnt.* IGNORE - DISK %^/media.* IGNORE - DISK * 95 99 - PORT "LOCAL=%([.:]80)$" state=LISTEN TEXT=http - PORT "LOCAL=%([.:]1337)$" state=LISTEN TEXT=cgi - PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh - - - -HOST=_FRONTEND_ - PROC sshd 1 - PROC crond - PROC mythfrontend 1 5 yellow - PROC msg_daemon.py - PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh - -HOST=_SLAVEBACKEND_ - PROC sshd 1 - PROC crond - PROC mythbackend - DISK %^/cdrom.* IGNORE - DISK %^/mnt.* IGNORE - DISK %^/media.* IGNORE - DISK * 95 99 - PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh - -HOST=_SLAVEFRONTEND_ - PROC sshd 1 - PROC lighttpd - PROC hobbitd - PROC crond - PROC mythbackend - PROC mythfrontend 1 5 yellow - PROC msg_daemon.py - DISK %^/cdrom.* IGNORE - DISK %^/mnt.* IGNORE - DISK %^/media.* IGNORE - DISK * 95 99 - PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh - - -HOST=_STANDALONE_ - PROC mythfrontend 1 5 yellow - PROC sshd 1 - PROC lighttpd - PROC xymond - PROC crond - PROC mysql - PROC mythbackend - PROC msg_daemon.py - DISK %^/cdrom.* IGNORE - DISK %^/mnt.* IGNORE - DISK %^/media.* IGNORE - DISK * 95 99 - PORT "LOCAL=%([.:]80)$" state=LISTEN TEXT=http - PORT "LOCAL=%([.:]1337)$" state=LISTEN TEXT=cgi - PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh - -DEFAULT - # These are the built-in defaults. - UP 1h - LOAD 5.0 10.0 - DISK %^/cdrom.* IGNORE - DISK %^/mnt.* IGNORE - DISK %^/media.* IGNORE - DISK * 99 100 - MEMPHYS 100 101 - MEMSWAP 50 80 - MEMACT 90 97 - diff --git a/abs/core/xymon/analysis.cfg.patch b/abs/core/xymon/analysis.cfg.patch new file mode 100644 index 0000000..3539ae3 --- /dev/null +++ b/abs/core/xymon/analysis.cfg.patch @@ -0,0 +1,112 @@ +--- analysis.cfg.orig 2017-01-18 19:50:46.758666909 +0000 ++++ analysis.cfg 2017-01-18 20:01:50.480263760 +0000 +@@ -353,12 +353,108 @@ + # to all hosts, add a new section with "HOSTS=*" + + ++HOST=_MASTERBACKEND_ ++ PROC sshd 1 ++ PROC lighttpd ++ PROC xymond ++ PROC crond ++ PROC mysql ++ PROC mythbackend ++ PROC msg_daemon.py ++ DISK %^/cdrom.* IGNORE ++ DISK %^/mnt.* IGNORE ++ DISK %^/media.* IGNORE ++ DISK * 95 99 ++ INODE %^/cdrom.* IGNORE ++ INODE %^/mnt.* IGNORE ++ INODE %^/media.* IGNORE ++ PORT "LOCAL=%([.:]80)$" state=LISTEN TEXT=http ++ PORT "LOCAL=%([.:]1337)$" state=LISTEN TEXT=cgi ++ PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh ++ ++HOST=_MASTERFRONTEND_ ++ PROC mythfrontend 1 5 yellow ++ PROC sshd 1 ++ PROC lighttpd ++ PROC xymond ++ PROC crond ++ PROC mysql ++ PROC mythbackend ++ PROC msg_daemon.py ++ DISK %^/cdrom.* IGNORE ++ DISK %^/mnt.* IGNORE ++ DISK %^/media.* IGNORE ++ DISK * 95 99 ++ INODE %^/cdrom.* IGNORE ++ INODE %^/mnt.* IGNORE ++ INODE %^/media.* IGNORE ++ PORT "LOCAL=%([.:]80)$" state=LISTEN TEXT=http ++ PORT "LOCAL=%([.:]1337)$" state=LISTEN TEXT=cgi ++ PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh ++ ++HOST=_FRONTEND_ ++ PROC sshd 1 ++ PROC crond ++ PROC mythfrontend 1 5 yellow ++ PROC msg_daemon.py ++ PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh ++ ++HOST=_SLAVEBACKEND_ ++ PROC sshd 1 ++ PROC crond ++ PROC mythbackend ++ DISK %^/cdrom.* IGNORE ++ DISK %^/mnt.* IGNORE ++ DISK %^/media.* IGNORE ++ DISK * 95 99 ++ INODE %^/cdrom.* IGNORE ++ INODE %^/mnt.* IGNORE ++ INODE %^/media.* IGNORE ++ PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh ++ ++HOST=_SLAVEFRONTEND_ ++ PROC sshd 1 ++ PROC lighttpd ++ PROC hobbitd ++ PROC crond ++ PROC mythbackend ++ PROC mythfrontend 1 5 yellow ++ PROC msg_daemon.py ++ DISK %^/cdrom.* IGNORE ++ DISK %^/mnt.* IGNORE ++ DISK %^/media.* IGNORE ++ DISK * 95 99 ++ INODE %^/cdrom.* IGNORE ++ INODE %^/mnt.* IGNORE ++ INODE %^/media.* IGNORE ++ PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh ++ ++HOST=_STANDALONE_ ++ PROC mythfrontend 1 5 yellow ++ PROC sshd 1 ++ PROC lighttpd ++ PROC xymond ++ PROC crond ++ PROC mysql ++ PROC mythbackend ++ PROC msg_daemon.py ++ DISK %^/cdrom.* IGNORE ++ DISK %^/mnt.* IGNORE ++ DISK %^/media.* IGNORE ++ DISK * 95 99 ++ INODE %^/cdrom.* IGNORE ++ INODE %^/mnt.* IGNORE ++ INODE %^/media.* IGNORE ++ PORT "LOCAL=%([.:]80)$" state=LISTEN TEXT=http ++ PORT "LOCAL=%([.:]1337)$" state=LISTEN TEXT=cgi ++ PORT "LOCAL=%([.:]22)$" state=LISTEN TEXT=ssh ++ + DEFAULT + # These are the built-in defaults. You should only modify these + # lines, not add new ones (no PROC, DISK, LOG ... lines). + UP 1h + LOAD 5.0 10.0 +- DISK * 90 95 ++ DISK * 95 99 + INODE * 70 90 + MEMPHYS 100 101 + MEMSWAP 50 80 diff --git a/abs/core/xymon/xymon-server.gen_light_conf.d b/abs/core/xymon/xymon-server.gen_light_conf.d new file mode 100644 index 0000000..6b558ce --- /dev/null +++ b/abs/core/xymon/xymon-server.gen_light_conf.d @@ -0,0 +1,2 @@ +include "/etc/lighttpd/xymon-server.include" + diff --git a/abs/core/xymon/xymon-server.include b/abs/core/xymon/xymon-server.include new file mode 100644 index 0000000..b3e15e0 --- /dev/null +++ b/abs/core/xymon/xymon-server.include @@ -0,0 +1,4 @@ +$HTTP["url"] =~ "^/xymon/hobbit-" { + cgi.assign = ( "" => "" ) + } + diff --git a/abs/core/xymon/xymon-server.install b/abs/core/xymon/xymon-server.install new file mode 100644 index 0000000..0eec8f1 --- /dev/null +++ b/abs/core/xymon/xymon-server.install @@ -0,0 +1,85 @@ +post_install() { + . /etc/systemconfig + if [ ! -f /home/xymon/server/ext/ignoreclient.py ] + then + echo "#this is a list of hosts to ignore" > /home/xymon/server/ext/ignoreclient.py + echo ignorehosts=\"\'ignoreme1\',\'ignoreme2\'\" >> /home/xymon/server/ext/ignoreclient.py + fi + + if [ ! -f /data/srv/httpd/htdocs/failed_func_hosts ] + then + touch /data/srv/httpd/htdocs/failed_func_hosts + fi + chown nobody:nobody /data/srv/httpd/htdocs/failed_func_hosts + chmod 777 /data/srv/httpd/htdocs/failed_func_hosts + + sed -i -e "s/localhost/$hostname/" /home/xymon/server/etc/hosts.cfg + sed -i -e "s/\# bbd/\# bbd func/" /home/xymon/server/etc/hosts.cfg + sed -i -e "s/localhost/$hostname/" /home/xymon/server/etc/xymonserver.cfg + + #fix permissions + chown -R nobody:nobody /home/xymon + chown -R nobody:nobody /data/srv/httpd/htdocs/xymon + + chown -R nobody:http /data/srv/httpd/htdocs/xymon/snap + chown -R nobody:http /data/srv/httpd/htdocs/xymon/rep + chmod -R 775 /data/srv/httpd/htdocs/xymon/rep + chmod -R 775 /data/srv/httpd/htdocs/xymon/snap + + chmod g+s /data/srv/httpd/htdocs/xymon/notes/ + setfacl -d -m g::rw /data/srv/httpd/htdocs/xymon/notes/ + setfacl -d -m u:nobody:rwx /data/srv/httpd/htdocs/xymon/notes/ + + file="/data/srv/httpd/htdocs/xymon/gifs/network.png" + if [ -f $file ] + then + setfacl -m u:nobody:rw $file + fi + + setfacl -d -m u:nobody:rwx /data/srv/httpd/htdocs/xymon/gifs/ + + chmod g+s /home/xymon/etc + setfacl -d -m g::rw /home/xymon/etc/ + setfacl -d -m u::rw /home/xymon/etc/ + setfacl -d -m u:nobody:rwx /home/xymon/etc/ + + file="/home/xymon/etc/mythdot" + if [ -f $file ] + then + setfacl -m u:nobody:rw $file + fi + + chown -R nobody /var/log/hobbit + + chown root /home/xymon/server/bin/xymonping + chmod +s /home/xymon/server/bin/xymonping + + #remove old mtc log files + rm -f /var/log/hobbit/mtc + rm -f /var/log/hobbit/mtc.1* + + echo "Generate lighttpd include..." + gen_light_include.py + echo "Forcing a re-read of lighttpd's configuration file..." + sv hup /service/lighttpd +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + rm -f /data/srv/httpd/htdocs/xymon/index.html + echo "Generate lighttpd include..." + gen_light_include.py + echo "Forcing a re-read of lighttpd's configuration file..." + sv hup /service/lighttpd +} + +pre_remove() { + /bin/true +} +op=$1 +shift +$op $* +# vim: ft=sh ts=2 diff --git a/abs/core/xymon/xymon-server.rules b/abs/core/xymon/xymon-server.rules index e4c515b..40b81af 100644 --- a/abs/core/xymon/xymon-server.rules +++ b/abs/core/xymon/xymon-server.rules @@ -1,7 +1,8 @@ #These rules are used by xymon-server nobody ALL = NOPASSWD:/usr/bin/certmaster-ca nobody ALL = NOPASSWD:/usr/bin/smartctl +nobody ALL = NOPASSWD:/usr/bin/fping http ALL = NOPASSWD:/usr/LH/bin/lh_system_backup_job http ALL = NOPASSWD:/usr/LH/bin/lh_system_restore_job -http ALL = NOPASSWD:/sbin/sv +http ALL = NOPASSWD:/usr/bin/sv diff --git a/abs/core/xymon/xymon.install b/abs/core/xymon/xymon.install deleted file mode 100755 index 4461df4..0000000 --- a/abs/core/xymon/xymon.install +++ /dev/null @@ -1,81 +0,0 @@ -post_install() { - . /etc/systemconfig - if [ ! -f /home/xymon/server/ext/ignoreclient.py ] - then - echo "#this is a list of hosts to ignore" > /home/xymon/server/ext/ignoreclient.py - echo ignorehosts=\"\'ignoreme1\',\'ignoreme2\'\" >> /home/xymon/server/ext/ignoreclient.py - fi - - if [ ! -f /data/srv/httpd/htdocs/failed_func_hosts ] - then - touch /data/srv/httpd/htdocs/failed_func_hosts - fi - chown nobody:nobody /data/srv/httpd/htdocs/failed_func_hosts - chmod 777 /data/srv/httpd/htdocs/failed_func_hosts - - - sed -i -e "s/localhost/$hostname/" /home/xymon/server/etc/hosts.cfg - sed -i -e "s/\# bbd/\# bbd func/" /home/xymon/server/etc/hosts.cfg - sed -i -e "s/localhost/$hostname/" /home/xymon/server/etc/xymonserver.cfg - - #fix permissions - chown -R nobody:nobody /home/xymon - chown -R nobody:nobody /data/srv/httpd/htdocs/xymon - - chown -R nobody:http /data/srv/httpd/htdocs/xymon/snap - chown -R nobody:http /data/srv/httpd/htdocs/xymon/rep - chmod -R 775 /data/srv/httpd/htdocs/xymon/rep - chmod -R 775 /data/srv/httpd/htdocs/xymon/snap - - chmod g+s /data/srv/httpd/htdocs/xymon/notes/ - setfacl -d -m g::rw /data/srv/httpd/htdocs/xymon/notes/ - setfacl -d -m u:nobody:rwx /data/srv/httpd/htdocs/xymon/notes/ - - file="/data/srv/httpd/htdocs/xymon/gifs/network.png" - if [ -f $file ] - then - setfacl -m u:nobody:rw $file - fi - - - setfacl -d -m u:nobody:rwx /data/srv/httpd/htdocs/xymon/gifs/ - - chmod g+s /home/xymon/etc - setfacl -d -m g::rw /home/xymon/etc/ - setfacl -d -m u::rw /home/xymon/etc/ - setfacl -d -m u:nobody:rwx /home/xymon/etc/ - - file="/home/xymon/etc/mythdot" - if [ -f $file ] - then - setfacl -m u:nobody:rw $file - fi - - - chown -R nobody /var/log/hobbit - - chown root /home/xymon/server/bin/xymonping - chmod +s /home/xymon/server/bin/xymonping - - #remove old mtc log files - rm -f /var/log/hobbit/mtc - rm -f /var/log/hobbit/mtc.1* - - -} - -post_upgrade() { - post_install $1 -} - -post_remove() { - rm -f /data/srv/httpd/htdocs/xymon/index.html -} - -pre_remove() { - /bin/true -} -op=$1 -shift -$op $* -# vim: ft=sh ts=2 diff --git a/abs/core/xymon/xymonserver.cfg.diff b/abs/core/xymon/xymonserver.cfg.diff index 48631dc..f017432 100755 --- a/abs/core/xymon/xymonserver.cfg.diff +++ b/abs/core/xymon/xymonserver.cfg.diff @@ -1,6 +1,6 @@ ---- xymonserver.cfg.orig 2015-03-04 21:28:58.618598840 +0000 -+++ xymonserver.cfg 2015-03-04 21:31:55.352569106 +0000 -@@ -145,6 +145,12 @@ +--- xymonserver.cfg.orig 2017-01-19 16:57:57.745304289 +0000 ++++ xymonserver.cfg 2017-01-19 17:02:08.323770694 +0000 +@@ -150,6 +150,12 @@ RRDHEIGHT="120" RRDWIDTH="576" # The RRD's contain 576 data points, so this is a good value @@ -13,19 +13,19 @@ # TEST2RRD defines the status- and data-messages you want to collect RRD data # about. You will normally not need to modify this, unless you have added a # script to pick up RRD data from custom tests (the xymond_rrd --extra-script -@@ -156,11 +162,13 @@ +@@ -169,11 +175,13 @@ # - # This is also used by the svcstatus.cgi script to determine if the detailed + # TEST2RRD and GRAPHS_* are used by the svcstatus.cgi script to determine if the detailed # status view of a test should include a graph. --TEST2RRD="cpu=la,disk,inode,qtree,memory,$PINGCOLUMN=tcp,http=tcp,dns=tcp,dig=tcp,time=ntpstat,vmstat,iostat,netstat,temperature,apache,bind,sendmail,mailq,nmailq=mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,files,procs=processes,ports,clock,lines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,if_load=devmon,temp=devmon,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond" -+#TEST2RRD="cpu=la,disk,inode,qtree,memory,$PINGCOLUMN=tcp,http=tcp,dns=tcp,dig=tcp,time=ntpstat,vmstat,iostat,netstat,temperature,apache,bind,sendmail,mailq,nmailq=mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,files,procs=processes,ports,clock,lines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,if_load=devmon,temp=devmon,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond" -+TEST2RRD="cpu=la,disk,inode,qtree,memory,$PINGCOLUMN=tcp,http=tcp,dns=tcp,dig=tcp,time=ntpstat,vmstat,iostat,netstat,temperature,apache,bind,sendmail,mailq,nmailq=mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,files,procs=processes,ports,clock,lines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,if_load=devmon,temp=devmon,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond,storage=ncv,memmbe=ncv,memmfe=ncv,gputemp=ncv,hddtemp=ncv,smart" +-TEST2RRD="cpu=la,disk,inode,qtree,memory,$PINGCOLUMN=tcp,http=tcp,dns=tcp,dig=tcp,time=ntpstat,vmstat,iostat,netstat,temperature,apache,bind,sendmail,mailq,nmailq=mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,files,procs=processes,ports,clock,lines,deltalines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,if_load=devmon,temp=devmon,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond" ++#TEST2RRD="cpu=la,disk,inode,qtree,memory,$PINGCOLUMN=tcp,http=tcp,dns=tcp,dig=tcp,time=ntpstat,vmstat,iostat,netstat,temperature,apache,bind,sendmail,mailq,nmailq=mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,files,procs=processes,ports,clock,lines,deltalines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,if_load=devmon,temp=devmon,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond" ++TEST2RRD="cpu=la,disk,inode,qtree,memory,$PINGCOLUMN=tcp,http=tcp,dns=tcp,dig=tcp,time=ntpstat,vmstat,iostat,netstat,temperature,apache,bind,sendmail,mailq,nmailq=mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,files,procs=processes,ports,clock,lines,deltalines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,if_load=devmon,temp=devmon,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond,storage=ncv,memmbe=ncv,memmfe=ncv,gputemp=ncv,hddtemp=ncv,smart" # This defines which RRD files to include on the "trends" column webpage, # and the order in which they appear. --GRAPHS="la,disk,inode,qtree,files,processes,memory,users,vmstat,iostat,tcp.http,tcp,ncv,netstat,ifstat,mrtg::1,ports,temperature,ntpstat,apache,bind,sendmail,mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,clock,lines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,devmon::1,if_load::1,temp,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond" -+#GRAPHS="la,disk,inode,qtree,files,processes,memory,users,vmstat,iostat,tcp.http,tcp,ncv,netstat,ifstat,mrtg::1,ports,temperature,ntpstat,apache,bind,sendmail,mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,clock,lines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,devmon::1,if_load::1,temp,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond" -+GRAPHS="la,disk,inode,qtree,files,processes,memory,users,vmstat,iostat,tcp.http,tcp,ncv,netstat,ifstat,mrtg::1,ports,temperature,ntpstat,apache,bind,sendmail,mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,clock,lines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,devmon::1,if_load::1,temp,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond,storage,memmbe,memmfe,gputemp,hddtemp" +-GRAPHS="la,disk,inode,qtree,files,processes,memory,users,vmstat,iostat,tcp.http,tcp,ncv,netstat,ifstat,mrtg::1,ports,temperature,ntpstat,apache,bind,sendmail,mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,clock,lines,deltalines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,devmon::1,if_load::1,temp,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond" ++#GRAPHS="la,disk,inode,qtree,files,processes,memory,users,vmstat,iostat,tcp.http,tcp,ncv,netstat,ifstat,mrtg::1,ports,temperature,ntpstat,apache,bind,sendmail,mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,clock,lines,deltalines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,devmon::1,if_load::1,temp,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond" ++GRAPHS="la,disk,inode,qtree,files,processes,memory,users,vmstat,iostat,tcp.http,tcp,ncv,netstat,ifstat,mrtg::1,ports,temperature,ntpstat,apache,bind,sendmail,mailq,socks,bea,iishealth,citrix,bbgen,bbtest,bbproxy,hobbitd,clock,lines,deltalines,ops,stats,cifs,JVM,JMS,HitCache,Session,JDBCConn,ExecQueue,JTA,TblSpace,RollBack,MemReq,InvObj,snapmirr,snaplist,snapshot,devmon::1,if_load::1,temp,paging,mdc,mdchitpct,cics,dsa,getvis,maxuser,nparts,xymongen,xymonnet,xymonproxy,xymond,storage,memmbe,memmfe,gputemp,hddtemp" # These two settings can be used to restrict what filesystems are being # tracked (i.e. have their utilisation graphed) by Xymon. |