diff options
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/dmenu/pkg.nix | 18 | ||||
| m--------- | packages/dmenu/source | 0 | ||||
| -rwxr-xr-x | packages/dwm/autostart.sh | 105 | ||||
| -rw-r--r-- | packages/dwm/pkg.nix | 18 | ||||
| m--------- | packages/dwm/source | 0 | ||||
| -rw-r--r-- | packages/dwmblocks/pkg.nix | 19 | ||||
| m--------- | packages/dwmblocks/source | 0 | ||||
| -rw-r--r-- | packages/sensible-apps/install.sh | 18 | ||||
| -rw-r--r-- | packages/sensible-apps/pkg.nix | 4 | ||||
| -rw-r--r-- | packages/sensible-apps/sensible-apps.nix | 33 | ||||
| -rw-r--r-- | packages/shotkey/pkg.nix | 18 | ||||
| m--------- | packages/shotkey/source | 0 | ||||
| -rw-r--r-- | packages/st/pkg.nix | 19 | ||||
| m--------- | packages/st/source | 0 |
14 files changed, 252 insertions, 0 deletions
diff --git a/packages/dmenu/pkg.nix b/packages/dmenu/pkg.nix new file mode 100644 index 0000000..d91db13 --- /dev/null +++ b/packages/dmenu/pkg.nix @@ -0,0 +1,18 @@ +{ stdenv, libX11, libXinerama, libXft }: +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "local-dmenu-${version}"; + version = "6.2.0"; + + src = ./source; + + buildInputs = [ libX11 libXinerama libXft ]; + + + unpackPhase = ''cp -r $src/* .''; + + buildPhase = ''make''; + + installPhase = ''make PREFIX=$out DESTDIR="" install''; +} diff --git a/packages/dmenu/source b/packages/dmenu/source new file mode 160000 +Subproject 121d3bbb8985f274e36321967c8ef2ef52aa3a0 diff --git a/packages/dwm/autostart.sh b/packages/dwm/autostart.sh new file mode 100755 index 0000000..1d0caa8 --- /dev/null +++ b/packages/dwm/autostart.sh @@ -0,0 +1,105 @@ +source ~/nixos/external/zsh/paths.zsh; +source ~/nixos/external/zsh/config.zsh; + +##### Helpers {{{ +action="$1"; + +# Is logout command (Cleanup) +is_kill() { [[ "$action" == "kill" ]]; } + +# Focus on a tag/ws +focus_tag() { [[ ! -z "$1" ]] && dwmc view $(($1 - 1)); sleep 0.2; } + +# Only run when there are no windows on the screen +on_startup() { is_kill || [[ "$(wmctrl -l | wc -l)" = "0" ]] && $@ & } + +# Run only once. If an instance is already running, noop +once() { + local name=$1; shift; + if (is_kill); then + killall "$name"; + else + pgrep $name || $@ & + fi; +} + +# Kill previous instance and run again +run() { + local name=$1; shift; + [[ ! -z "$name" ]] && killall -9 $name && sleep 0.05; + is_kill || $@ & +} +# }}} + + +##### Autostart {{{ + echo "[Autostart]: Running daemons"; + + # Wallpaper + run "" ~/.fehbg; + + # Key daemon + run "shotkey" shotkey; + + # Dwm blocks status text + run "dwmblocks" dwmblocks; + + # Notification daemon + run "dunst" dunst -config ~/.config/dunst/dunstrc; + + # Compositor + run "picom" picom --experimental-backends --config ~/.config/compton.conf; + + # Cron jobs + run "crond" crond -n -f ~/.config/crontab/crontab; + + # Battery watcher + run "" ~/scripts/battery-watch.sh start; + + # Disk automount + once "udiskie" ~/.bin/with_zsh udiskie; + + # Clipboard history + once "clipmenud" clipmenud; + + # Network manager applet + once "nm-applet" nm-applet; + + # Syncthing + run "syncthing" syncthing -logflags=0 -no-browser 2>&1 >/dev/null; + + # Torrent daemon + #once "btpd" btpd -d "$HOME/.config/btpd"; + once "transmission" transmission-daemon --download-dir ~/Downloads/dl; + + # Music daemon + once "mpd" mpd ~/.config/mpd/mpd.conf --stdout --no-daemon; + + # Hide mouse pointer + once "unclutter" unclutter; +# }}} + + +##### Initialized applications {{{ +echo "[Autostart]: Checking applications"; +#on_startup sensible-browser; + +applications() { + #sleep 0.5; + + #focus_tag 9; + #on_startup :today; + #on_startup :tasks; + + #focus_tag 6; + #on_startup sensible-browser; + + #focus_tag 1; +} + +applications & + +# }}} + + +disown; diff --git a/packages/dwm/pkg.nix b/packages/dwm/pkg.nix new file mode 100644 index 0000000..533acb9 --- /dev/null +++ b/packages/dwm/pkg.nix @@ -0,0 +1,18 @@ +{ stdenv, libX11, libXinerama, libXft }: +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "local-dwm-${version}"; + version = "6.2.0"; + + src = ./source; + + buildInputs = [ libX11 libXinerama libXft ]; + + + unpackPhase = ''cp -r $src/* .''; + + buildPhase = ''make''; + + installPhase = ''make PREFIX=$out DESTDIR="" install''; +} diff --git a/packages/dwm/source b/packages/dwm/source new file mode 160000 +Subproject 3dd70306618f086e473bb9650bfa9b79b1fc844 diff --git a/packages/dwmblocks/pkg.nix b/packages/dwmblocks/pkg.nix new file mode 100644 index 0000000..79a23f8 --- /dev/null +++ b/packages/dwmblocks/pkg.nix @@ -0,0 +1,19 @@ +{ stdenv, libX11, pkgconfig }: +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "local-dwmblocks-${version}"; + version = "0.1.0"; + + src = ./source; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ libX11 ]; + + + unpackPhase = ''cp -r $src/* .''; + + buildPhase = ''make''; + + installPhase = ''make PREFIX=$out DESTDIR="" install''; +} diff --git a/packages/dwmblocks/source b/packages/dwmblocks/source new file mode 160000 +Subproject 1b7209ba919e0213521c88a8a85a2284ae5dac9 diff --git a/packages/sensible-apps/install.sh b/packages/sensible-apps/install.sh new file mode 100644 index 0000000..ec13109 --- /dev/null +++ b/packages/sensible-apps/install.sh @@ -0,0 +1,18 @@ +apps=" +sensible-terminal $TERMINAL +sensible-editor $EDITOR +sensible-browser $BROWSER +sensible-private-browser $PRIVATE_BROWSER +"; + +BIN=$out/bin; + +echo -e "$apps" | while read app bin; do + if [[ ! -z "$bin" ]]; then + echo "[SENSIBLE_APPS]:: Setting $app to $bin ($BIN/$bin)"; + mkdir -p $BIN; + echo -e "#!/usr/bin/env sh\nexec $bin \"\$@\"" > $BIN/$app; + chmod +x $BIN/$app; + fi; +done; + diff --git a/packages/sensible-apps/pkg.nix b/packages/sensible-apps/pkg.nix new file mode 100644 index 0000000..3a50480 --- /dev/null +++ b/packages/sensible-apps/pkg.nix @@ -0,0 +1,4 @@ + +# Rexported derivation +let sensibleApps = import ./sensible-apps.nix; in sensibleApps.package + diff --git a/packages/sensible-apps/sensible-apps.nix b/packages/sensible-apps/sensible-apps.nix new file mode 100644 index 0000000..db35bf7 --- /dev/null +++ b/packages/sensible-apps/sensible-apps.nix @@ -0,0 +1,33 @@ +let + apps = { + EDITOR = "nvim"; + TERMINAL = "st"; + BROWSER = "firefox"; + PRIVATE_BROWSER = "firefox"; + }; + package = { stdenv }: stdenv.mkDerivation rec { + name = "local-sensible-apps-${version}"; + version = "0.0.1"; + + src = [ ./install.sh ]; + + unpackPhase = '' + for srcFile in $src; do + local tgt=$(echo $srcFile | cut --delimiter=- --fields=2-) + cp $srcFile $tgt + done + ''; + + installPhase = '' + export TERMINAL="${apps.TERMINAL}"; + export EDITOR="${apps.EDITOR}"; + export BROWSER="${apps.BROWSER}"; + export PRIVATE_BROWSER="${apps.PRIVATE_BROWSER}"; + ls -la; + sh ./install.sh + ''; + }; +in { + package = package; + apps = apps; +} diff --git a/packages/shotkey/pkg.nix b/packages/shotkey/pkg.nix new file mode 100644 index 0000000..3a9eea7 --- /dev/null +++ b/packages/shotkey/pkg.nix @@ -0,0 +1,18 @@ +{ stdenv, libX11 }: +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "local-shotkey-${version}"; + version = "0.1.0"; + + src = ./source; + + buildInputs = [ libX11 ]; + + + unpackPhase = ''cp -r $src/* .''; + + buildPhase = ''make''; + + installPhase = ''make PREFIX=$out DESTDIR="" install''; +} diff --git a/packages/shotkey/source b/packages/shotkey/source new file mode 160000 +Subproject 299bd436635cb1a4d7877bac50b482d32fccffe diff --git a/packages/st/pkg.nix b/packages/st/pkg.nix new file mode 100644 index 0000000..3931819 --- /dev/null +++ b/packages/st/pkg.nix @@ -0,0 +1,19 @@ +{ stdenv, libX11, libXinerama, libXft, fontconfig, pkgconfig, ncurses }: +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "local-st-${version}"; + version = "0.8.4"; + + src = ./source; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ libX11 libXft fontconfig ncurses ]; + + + unpackPhase = ''cp -r $src/* .''; + + buildPhase = ''make''; + + installPhase = ''TERMINFO=$out/share/terminfo make PREFIX=$out DESTDIR="" install''; +} diff --git a/packages/st/source b/packages/st/source new file mode 160000 +Subproject e702bebb0837f9d08a73e8ce8392dd6b339f4b4 |
