diff --git a/flake.nix b/flake.nix index 961e1f1..adb355a 100644 --- a/flake.nix +++ b/flake.nix @@ -23,6 +23,7 @@ linux = import ./overlays/linux.nix; picom = import ./overlays/picom.nix; polybar = import ./overlays/polybar.nix; + transcrypt = import ./overlays/transcrypt.nix; winetricks = import ./overlays/winetricks.nix; wine-osu = import ./overlays/wine-osu.nix; }; diff --git a/overlays/misc/transcrypt.patch b/overlays/misc/transcrypt.patch new file mode 100644 index 0000000..aec80dc --- /dev/null +++ b/overlays/misc/transcrypt.patch @@ -0,0 +1,45 @@ +diff --git a/transcrypt b/transcrypt +index 610b94f..7cc5035 100755 +--- a/transcrypt ++++ b/transcrypt +@@ -282,6 +282,7 @@ save_helper_scripts() { + + cat <<-'EOF' >"${GIT_DIR}/crypt/clean" + #!/usr/bin/env bash ++ PATH="$(transcrypt-depspathprefix 2>/dev/null)$PATH" + filename=$1 + # ignore empty files + if [[ -s $filename ]]; then +@@ -304,6 +305,7 @@ save_helper_scripts() { + + cat <<-'EOF' >"${GIT_DIR}/crypt/smudge" + #!/usr/bin/env bash ++ PATH="$(transcrypt-depspathprefix 2>/dev/null)$PATH" + tempfile=$(mktemp 2>/dev/null || mktemp -t tmp) + trap 'rm -f "$tempfile"' EXIT + cipher=$(git config --get --local transcrypt.cipher) +@@ -313,6 +315,7 @@ save_helper_scripts() { + + cat <<-'EOF' >"${GIT_DIR}/crypt/textconv" + #!/usr/bin/env bash ++ PATH="$(transcrypt-depspathprefix 2>/dev/null)$PATH" + filename=$1 + # ignore empty files + if [[ -s $filename ]]; then +@@ -324,6 +327,7 @@ save_helper_scripts() { + + cat <<-'EOF' >"${GIT_DIR}/crypt/merge" + #!/usr/bin/env bash ++ PATH="$(transcrypt-depspathprefix 2>/dev/null)$PATH" + + # Look up name of local branch/ref to which changes are being merged + OURS_LABEL=$(git rev-parse --abbrev-ref HEAD) +@@ -459,7 +463,7 @@ save_configuration() { + git config merge.crypt.name 'Merge transcrypt secret files' + + # add a git alias for listing encrypted files +- git config alias.ls-crypt "!git -c core.quotePath=false ls-files | git -c core.quotePath=false check-attr --stdin filter | awk 'BEGIN { FS = \":\" }; /crypt$/{ print \$1 }'" ++ git config alias.ls-crypt "!PATH=\"\$(transcrypt-depspathprefix 2>/dev/null)\$PATH\"; git -c core.quotePath=false ls-files | git -c core.quotePath=false check-attr --stdin filter | awk 'BEGIN { FS = \":\" }; /crypt$/{ print \$1 }'" + } + + # display the current configuration settings diff --git a/overlays/transcrypt.nix b/overlays/transcrypt.nix new file mode 100644 index 0000000..85f350f --- /dev/null +++ b/overlays/transcrypt.nix @@ -0,0 +1,13 @@ +self: super: { + transcrypt = super.transcrypt.overrideAttrs(o: rec { + version = "2.1.0"; + + patches = [ ./misc/transcrypt.patch ]; + src = super.fetchFromGitHub { + owner = "elasticdog"; + repo = "transcrypt"; + rev = "v${version}"; + sha256 = "0bpz1hazbhfb6pqi68x55kq6a31bgh6vwij836slmi4jqiwvnh5a"; + }; + }); +} diff --git a/users/rin/home.nix b/users/rin/home.nix index 43b27a8..d272f5e 100644 --- a/users/rin/home.nix +++ b/users/rin/home.nix @@ -18,6 +18,7 @@ pavucontrol osu-lazer tor-browser-bundle-bin + transcrypt wine-osu (winetricks.override { wine = wine-osu; }) xorg.xgamma