From 43586a11fb56e5d3555e92ac67252c8ccd8341f8 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 20 Dec 2020 17:45:23 +0530 Subject: Migrates sensible apps to nix --- packages/sensible-apps/install.sh | 18 +++++++++++++++++ packages/sensible-apps/pkg.nix | 4 ++++ packages/sensible-apps/sensible-apps.nix | 33 ++++++++++++++++++++++++++++++++ 3 files changed, 55 insertions(+) create mode 100644 packages/sensible-apps/install.sh create mode 100644 packages/sensible-apps/pkg.nix create mode 100644 packages/sensible-apps/sensible-apps.nix (limited to 'packages/sensible-apps') 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; +} -- cgit v1.3.1