From 923e82ea210ea93e6d5f2cf3c969266b35d5bf4e Mon Sep 17 00:00:00 2001 From: André Fabian Silva Delgado Date: Mon, 25 Aug 2014 06:27:23 -0300 Subject: spectrwm-parabola: updating version, replace libre to parabola suffix --- libre/spectrwm-parabola/LICENSE | 47 +++++++++++++++++ libre/spectrwm-parabola/PKGBUILD | 81 ++++++++++++++++++++++++++++ libre/spectrwm-parabola/baraction.sh | 82 +++++++++++++++++++++++++++++ libre/spectrwm-parabola/spectrwm-no-preload | 2 + 4 files changed, 212 insertions(+) create mode 100644 libre/spectrwm-parabola/LICENSE create mode 100644 libre/spectrwm-parabola/PKGBUILD create mode 100644 libre/spectrwm-parabola/baraction.sh create mode 100644 libre/spectrwm-parabola/spectrwm-no-preload (limited to 'libre/spectrwm-parabola') diff --git a/libre/spectrwm-parabola/LICENSE b/libre/spectrwm-parabola/LICENSE new file mode 100644 index 000000000..24c04f3a0 --- /dev/null +++ b/libre/spectrwm-parabola/LICENSE @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2009 Marco Peereboom + * Copyright (c) 2009 Ryan McBride + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ +/* + * Much code and ideas taken from dwm under the following license: + * MIT/X Consortium License + * + * 2006-2008 Anselm R Garbe + * 2006-2007 Sander van Dijk + * 2006-2007 Jukka Salmi + * 2007 Premysl Hruby + * 2007 Szabolcs Nagy + * 2007 Christof Musik + * 2007-2008 Enno Gottox Boland + * 2007-2008 Peter Hartlich + * 2008 Martin Hurton + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ diff --git a/libre/spectrwm-parabola/PKGBUILD b/libre/spectrwm-parabola/PKGBUILD new file mode 100644 index 000000000..082f189c5 --- /dev/null +++ b/libre/spectrwm-parabola/PKGBUILD @@ -0,0 +1,81 @@ +# $Id: PKGBUILD 117835 2014-08-24 14:10:25Z kkeen $ +# Maintainer (Arch): Kyle Keen +# Contributor (Arch): Christoph Zeiler + +_pkgname=spectrwm +pkgname=spectrwm-parabola +pkgver=2.6.0 +pkgrel=1 +pkgdesc="A minimalistic automatic tiling window manager that tries to stay out of the way, without nonfree profont support" +arch=('i686' 'x86_64' 'mips64el') +url="http://www.spectrwm.org" +_watch="https://opensource.conformal.com/snapshots/spectrwm/" +license=('custom:ISC') +depends=('dmenu' 'xcb-util' 'xcb-util-wm' 'xcb-util-keysyms' 'libxrandr' 'libxft' 'libxcursor') +replaces=('spectrwm' 'scrotwm' 'spectrwm-libre') +conflicts=('spectrwm' 'spectrwm-libre') +provides=("spectrwm=$pkgver") +makedepends=('libxt') +optdepends=('scrot: screenshots' + 'xlockmore: great screenlocker' + 'terminus-font: great font') +backup=(etc/spectrwm.conf) + +# the 2.6.0 linux makefile does not build +# so download and use the 2.5.1 makefile until this is fixed + +source=(http://opensource.conformal.com/snapshots/$_pkgname/$_pkgname-$pkgver.tgz \ + http://opensource.conformal.com/snapshots/$_pkgname/$_pkgname-2.5.1.tgz \ + LICENSE \ + baraction.sh \ + spectrwm-no-preload) +md5sums=('278acafe23d2fa2b1d7a3705bcbe95de' + 'd9aec3342920e31cbe60f1032571043a' + 'a67cfe51079481e5b0eab1ad371379e3' + '950d663692e1da56e0ac864c6c3ed80e' + '974d109ce0af39cc73936d5efd682480') + +build() { + cd "$srcdir/$_pkgname-$pkgver" + + sed -i 's|\"/usr/local/lib/libswmhack.so\"|\"libswmhack.so\"|' spectrwm.c + sed -i 's/verbose_layout = false;/verbose_layout = true;/' spectrwm.c + sed -i 's/# modkey = Mod1/modkey = Mod4/' spectrwm.conf + # crashes if defaults can't be found, use less massive defaults + sed -i 's/-\*-terminus-medium-\*-\*-\*-\*/-*-profont-*-*-*-*-12/' spectrwm.conf + #sed -i 's/# program[lock].*/program[lock] = slock/' spectrwm.conf + + # see spectrwm FS#403 + sed -i 's/setconfspawn("lock".*/setconfspawn("lock", "xlock", SWM_SPAWN_OPTIONAL);/' spectrwm.c + + cd linux + cp "$srcdir/$_pkgname-2.5.1/linux/Makefile" ./ + make PREFIX="/usr" +} + +package() { + cd "$srcdir/$_pkgname-$pkgver/linux" + make PREFIX="/usr" DESTDIR="$pkgdir" install + install -Dm644 spectrwm.desktop "$pkgdir/usr/share/xsessions/spectrwm.desktop" + cd .. + install -Dm644 spectrwm.conf "$pkgdir/etc/spectrwm.conf" + install -Dm755 screenshot.sh "$pkgdir/usr/share/spectrwm/screenshot.sh" + mkdir -p "$pkgdir/etc/spectrwm" + cp spectrwm_*.conf "$pkgdir/etc/spectrwm/" + cd "$srcdir" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$_pkgname/LICENSE" + install -Dm755 baraction.sh "$pkgdir/usr/share/spectrwm/baraction.sh" + install -Dm755 spectrwm-no-preload "$pkgdir/usr/bin/spectrwm-no-preload" + + #ln -s /usr/lib/libswmhack.so.0.0 "$pkgdir/usr/lib/libswmhack.so.0" + #ln -s /usr/lib/libswmhack.so.0.0 "$pkgdir/usr/lib/libswmhack.so" + + # fix this for real in the makefile + rm "$pkgdir/usr/bin/scrotwm" + ln -s "/usr/bin/spectrwm" "$pkgdir/usr/bin/scrotwm" + mkdir -p "$pkgdir"/usr/share/man/{es,it,pt,ru}/man1/ + mv "$pkgdir/usr/share/man/man1/spectrwm_es.1" "$pkgdir/usr/share/man/es/man1/" + mv "$pkgdir/usr/share/man/man1/spectrwm_it.1" "$pkgdir/usr/share/man/it/man1/" + mv "$pkgdir/usr/share/man/man1/spectrwm_pt.1" "$pkgdir/usr/share/man/pt/man1/" + mv "$pkgdir/usr/share/man/man1/spectrwm_ru.1" "$pkgdir/usr/share/man/ru/man1/" +} diff --git a/libre/spectrwm-parabola/baraction.sh b/libre/spectrwm-parabola/baraction.sh new file mode 100644 index 000000000..96a8a7b1a --- /dev/null +++ b/libre/spectrwm-parabola/baraction.sh @@ -0,0 +1,82 @@ +#!/bin/bash +# baraction.sh for spectrwm status bar +# From http://wiki.archlinux.org/index.php/Scrotwm + +SLEEP_SEC=5 +#loops forever outputting a line every SLEEP_SEC secs +while :; do + + eval $(cat /proc/acpi/battery/BAT0/state | awk '/charging state/ {printf "BAT_CHGSTATE=%s;", $3}; /remaining capacity/ {printf "BAT_REMNG=%s;",$3}; /present rate/ {printf "BAT_RATE=%s;",$3};' -) + eval $(cat /proc/acpi/battery/BAT0/info | awk '/present/ {printf "BAT_PRESENT=%s;", $2}; /last full capacity/ {printf "BAT_LASTFULL=%s;",$4};' -) + + BAT_REMNG_WH=`echo "scale=1; a=($BAT_REMNG+50)/1000; print a" | bc -l` + BAT_RATE_W=`echo "scale=1; a=($BAT_RATE+50)/1000; print a" | bc -l` + BCSCRIPT="scale=0; a=(100*$BAT_REMNG / $BAT_LASTFULL); print a" + BAT_PCT=`echo $BCSCRIPT | bc -l`% + + case $BAT_PRESENT in + no) + POWER_STR="AC, NO BATTERY" + ;; + yes) + + case $BAT_CHGSTATE in + charged) + #on ac + AC_STATUS="ON AC" + TIME_REMNG="N/A" + POWER_STR="$AC_STATUS $BAT_CHGSTATE $BAT_PCT" + ;; + charging) + #on ac + AC_STATUS="ON AC" + BCSCRIPT="scale=1; a=(60*($BAT_LASTFULL - $BAT_REMNG) / $BAT_RATE); print a" + TIMETOFULL_MIN=`echo $BCSCRIPT | bc -l` + POWER_STR="$AC_STATUS $BAT_CHGSTATE $BAT_PCT C="$BAT_REMNG_WH"Wh Rate="$BAT_RATE_W"W TTF="$TIMETOFULL_MIN"min" + ;; + discharging) + AC_STATUS="ON BATT" + TIME_REMNG_MIN=`echo "scale=0; a=(60*$BAT_REMNG / $BAT_RATE); print a" | bc -l` + TIME_REMNG_HH=`echo "scale=0; a=($BAT_REMNG / $BAT_RATE); if (a<10) {print "0"; print a} else {print a}" | bc -l` + + TIME_REMNG_MM=`echo "scale=0; a=($TIME_REMNG_MIN-60*$TIME_REMNG_HH); if (a<10) {print "0"; print a} else {print a}" | bc -l` + POWER_STR="$AC_STATUS $BAT_PCT C="$BAT_REMNG_WH"Wh P="$BAT_RATE_W"W R="$TIME_REMNG_HH":"$TIME_REMNG_MM + ;; + *) + POWER_STR=$BAT_CHGSTATE + ;; + esac + + ;; + *) + POWER_STR="error" + ;; + esac + + #spectrwm bar_print can't handle UTF-8 characters, such as degree symbol + #Core 0: +67.0°C (crit = +100.0°C) + eval $(sensors 2>/dev/null | sed s/[°+]//g | awk '/^Core 0/ {printf "CORE0TEMP=%s;", $3}; /^Core 1/ {printf "CORE1TEMP=%s;",$3}; /^fan1/ {printf "FANSPD=%s;",$2};' -) + TEMP_STR="Tcpu=$CORE0TEMP,$CORE1TEMP F=$FANSPD" + + WLAN_ESSID=$(iwconfig wlan0 | awk -F "\"" '/wlan0/ { print $2 }') + eval $(cat /proc/net/wireless | sed s/[.]//g | awk '/wlan0/ {printf "WLAN_QULTY=%s; WLAN_SIGNL=%s; WLAN_NOISE=%s", $3,$4,$5};' -) + BCSCRIPT="scale=0;a=100*$WLAN_QULTY/70;print a" + WLAN_QPCT=`echo $BCSCRIPT | bc -l` + WLAN_POWER=`iwconfig 2>/dev/null| grep "Tx-Power"| awk {'print $4'}|sed s/Tx-Power=//` + WLAN_STR="$WLAN_ESSID: Q=$WLAN_QPCT% S/N="$WLAN_SIGNL"/"$WLAN_NOISE"dBm T="$WLAN_POWER"dBm" + + CPUFREQ_STR=`echo "Freq:"$(cat /proc/cpuinfo | grep 'cpu MHz' | sed 's/.*: //g; s/\..*//g;')` + CPULOAD_STR="Load:$(uptime | sed 's/.*://; s/,//g')" + + eval $(awk '/^MemTotal/ {printf "MTOT=%s;", $2}; /^MemFree/ {printf "MFREE=%s;",$2}' /proc/meminfo) + MUSED=$(( $MTOT - $MFREE )) + MUSEDPT=$(( ($MUSED * 100) / $MTOT )) + MEM_STR="Mem:${MUSEDPT}%" + + echo -e "$POWER_STR $TEMP_STR $CPUFREQ_STR $CPULOAD_STR $MEM_STR $WLAN_STR" + #alternatively if you prefer a different date format + #DATE_STR=`date +"%H:%M %a %d %b` + #echo -e "$DATE_STR $POWER_STR $TEMP_STR $CPUFREQ_STR $CPULOAD_STR $MEM_STR $WLAN_STR" + + sleep $SLEEP_SEC +done diff --git a/libre/spectrwm-parabola/spectrwm-no-preload b/libre/spectrwm-parabola/spectrwm-no-preload new file mode 100644 index 000000000..12385eddb --- /dev/null +++ b/libre/spectrwm-parabola/spectrwm-no-preload @@ -0,0 +1,2 @@ +#!/bin/sh +exec env -u LD_PRELOAD $@ -- cgit v1.2.3