check-idle() {
export DISPLAY=:0
- idle_time=$(xprintidle 2>/dev/null) ||:
# 3 hours, assume a movie might run that long.
- if [[ $idle_time ]] && (( idle_time < 1000 * 60 * 60 * 3 )); then
+ idle_limit=$((1000 * 60 * 60 * 3))
+ idle_time=$idle_limit
+ id=999
+ while id $((++id)) &>/dev/null; do
+ new_idle_time=$(sudo -u \#$id xprintidle 2>/dev/null) ||:
+ if [[ $new_idle_time && $new_idle_time -lt $idle_time ]]; then
+ idle_time=$new_idle_time
+ fi
+ done
+ if (( idle_time < idle_limit )); then
idle=false
else
idle=true
+++ /dev/null
-#!/bin/bash
else
pi xmacro
fi
- pi gtk-redshift xinput
+ pi xinput
+ # recommends gets us geoclue (for darkening automatically at night i assume),
+ # which recommends modemmanager, which is annoying to fix for the model01 keyboard.
+ pi --no-install-recommends gtk-redshift
fi
;;&
fedora)
jq
kid3-qt
kid3-cli
+ konsole
linphone
linux-doc
locate
####### begin misc packages ###########
+reset-sakura
+sudo -u traci -i reset-sakura
+reset-konsole
+sudo -u traci -i reset-konsole
+
if [[ ! -e ~/.linphonerc && -e /p/.linphonerc-initial ]]; then
cp /p/.linphonerc-initial ~/.linphonerc
fi
# esac
-
+pi --no-install-recommends kdeconnect-plasma
### kdeconnect for gnome. started in /a/bin/distro-setup/desktop-20-autostart.sh
+### but gnome + xmonad not working in flidas, so i disabled it
pi libgtk-3-dev python3-requests-oauthlib valac cmake python-nautilus libappindicator3-dev
cd /a/opt/indicator-kdeconnect
mkdir -p build
# /etc/xdg/autostart/kdeconnectd.desktop
# I'm not seeing the icon, but the clipboard replication is working
+
+### model 01 arduino support ###
+# https://github.com/keyboardio/Kaleidoscope/wiki/Install-Arduino-support-on-Linux
+# also built latest arduino in /a/opt/Arduino, (just cd build; ant build; ant run )
+# set arduino var in bashrc,
+# have system config file setup too.
+sudo adduser $USER dialout
+case $distro in
+ arch)
+ sudo usermod -a -G uucp $USER
+ ;;
+esac
+lnf -T /a/opt/sketches ~/Arduino
+
######### end misc packages #########
# limitations under the License.
# set to oppsite if the order is flipped.
-k2flip=false
+k2flip=true
if $k2flip; then
k2inorder=false
else
case $1 in
l) type=laptop ;;
k) type=kinesis ;;
+ m) type=model01 ;;
esac
#set -x
fi
}
+# default via xset q is 660 25. (delay for autorepeat, repeat rate)
+# was at 200 13, but while learning to use keyboardio, i hold keys a bit longer sometimes.
+xset r rate 400 13 # decrease rate delay
+
+if set_device_id "SteelSeries World of Warcraft MMO Gaming Mouse"; then
+ ms "$device_id" 100 1000/1 7 4 1
+ #ms "$device_id" 1 7/2 2 2.5 2
+
+ # makes it compatible with what windows sends using synergy
+ # commented out because i never expect to use windows again
+ #xinput --set-button-map "$device_id" 1 2 3 4 5 6 7 6 7 10 11 12 13 14 15
+
+ # under the new "improved" libinput, the mouse speed/accel has
+ # changed all around and is much more limited.
+ # Other xinput commands will fail and this will succeed.
+ xinput --set-prop "$device_id" "libinput Accel Speed" '.8'
+fi
+
case $type in
+ model01)
+ xkbcomp /a/c/model01.xkb $DISPLAY
+ ;;
laptop)
# original saved with: xkbcomp $DISPLAY /a/c/stretch-11-2016.xkb
xkbcomp /a/c/x2.xkb $DISPLAY
xkbset exp =m # stop mousekeys expiring after a timeout
- xset r rate 200 13 # decrease rate delay
cd / # so xbindkeys does not hold open mountpoints
killall xbindkeys # having some lag, thinking this might help.
xbindkeys # configured to grab left and right scroll button presses
# razer naga middle mouse stopped working. it's settings were:
#ms "$device_id" 100 1000/1 7 4 1
- if set_device_id "SteelSeries World of Warcraft MMO Gaming Mouse"; then
- ms "$device_id" 100 1000/1 7 4 1
- #ms "$device_id" 1 7/2 2 2.5 2
-
- # makes it compatible with what windows sends using synergy
- xinput --set-button-map "$device_id" 1 2 3 4 5 6 7 6 7 10 11 12 13 14 15
-
- # under the new "improved" libinput, the mouse speed/accel has
- # changed all around and is much more limited.
- # Other xinput commands will fail and this will succeed.
- xinput --set-prop "$device_id" "libinput Accel Speed" '.8'
- fi
# disable the mouse movements mouse wheel
esac
# for desktop and htpc
-set_device_id "Logitech Unifying Device"
+if set_device_id "Logitech Unifying Device"; then
xinput --set-prop "$device_id" 'Evdev Middle Button Emulation' 1
-
+fi
#ms 'Kensington Kensington Slimblade Trackball' 1 7/2 2 4 5 = 2.01
# ms 9 10 20/1 6 4 .2
#set +x
+exit 0
# most of these settings get translated into settings
# in /etc/exim4/update-exim4.conf.conf
+ # how /etc/exim4/update-exim4.conf.conf translates into actual exim settings is
+ # documented in man update-exim4.conf, which outputs to the config that
+ # exim actually reads. except the man page is not perfect, for example,
+ # it doesn't document that it sets
+ # DCconfig_${dc_eximconfig_configtype}" "1"
+ # which is a line from update-exim4.conf, which is a relatively short bash script.
# mailname setting sets /etc/mailname
debconf-set-selections <<EOF