aboutsummaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/dmenu/pkg.nix18
m---------packages/dmenu/source0
-rwxr-xr-xpackages/dwm/autostart.sh105
-rw-r--r--packages/dwm/pkg.nix18
m---------packages/dwm/source0
-rw-r--r--packages/dwmblocks/pkg.nix19
m---------packages/dwmblocks/source0
-rw-r--r--packages/sensible-apps/install.sh18
-rw-r--r--packages/sensible-apps/pkg.nix4
-rw-r--r--packages/sensible-apps/sensible-apps.nix33
-rw-r--r--packages/shotkey/pkg.nix18
m---------packages/shotkey/source0
-rw-r--r--packages/st/pkg.nix19
m---------packages/st/source0
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