From 97696ec554ff9c681c459b17d0b7b355b64ddebd Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Mon, 25 Mar 2024 11:03:30 +0100 Subject: [PATCH 1/4] different fish exec workaround Signed-off-by: Harald Hoyer --- modules/nixos/user/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/modules/nixos/user/default.nix b/modules/nixos/user/default.nix index 39b3aef..766f3f3 100644 --- a/modules/nixos/user/default.nix +++ b/modules/nixos/user/default.nix @@ -73,8 +73,13 @@ in }".source = cfg.icon; }; + extraOptions.programs.bash.initExtra = '' - [[ $WANT_BASH ]] || exec ${pkgs.fish}/bin/fish -l + if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]] + then + shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION="" + exec ${pkgs.fish}/bin/fish $LOGIN_OPTION + fi ''; }; From d49029f7cda5f3603f661906f76e123987f5786c Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Mon, 25 Mar 2024 11:04:33 +0100 Subject: [PATCH 2/4] flake update Signed-off-by: Harald Hoyer --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index cb96378..7960637 100644 --- a/flake.lock +++ b/flake.lock @@ -2507,11 +2507,11 @@ }, "unstable": { "locked": { - "lastModified": 1710806803, - "narHash": "sha256-qrxvLS888pNJFwJdK+hf1wpRCSQcqA6W5+Ox202NDa0=", + "lastModified": 1711163522, + "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b06025f1533a1e07b6db3e75151caa155d1c7eb3", + "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", "type": "github" }, "original": { From d94278f8ac800ac129cf27ee4c5a632e0b3287a0 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Mon, 25 Mar 2024 11:04:33 +0100 Subject: [PATCH 3/4] flake update Signed-off-by: Harald Hoyer --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index cb96378..7960637 100644 --- a/flake.lock +++ b/flake.lock @@ -2507,11 +2507,11 @@ }, "unstable": { "locked": { - "lastModified": 1710806803, - "narHash": "sha256-qrxvLS888pNJFwJdK+hf1wpRCSQcqA6W5+Ox202NDa0=", + "lastModified": 1711163522, + "narHash": "sha256-YN/Ciidm+A0fmJPWlHBGvVkcarYWSC+s3NTPk/P+q3c=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b06025f1533a1e07b6db3e75151caa155d1c7eb3", + "rev": "44d0940ea560dee511026a53f0e2e2cde489b4d4", "type": "github" }, "original": { From 30754f521152314a10dccc6d07a4c7ee8b40c01c Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Mon, 25 Mar 2024 11:03:30 +0100 Subject: [PATCH 4/4] different fish exec workaround Signed-off-by: Harald Hoyer --- modules/nixos/user/default.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/modules/nixos/user/default.nix b/modules/nixos/user/default.nix index 39b3aef..a97f26a 100644 --- a/modules/nixos/user/default.nix +++ b/modules/nixos/user/default.nix @@ -73,8 +73,15 @@ in }".source = cfg.icon; }; + extraOptions.programs.bash.initExtra = '' - [[ $WANT_BASH ]] || exec ${pkgs.fish}/bin/fish -l + if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]] + then + shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION="" + SHELL=/run/current-system/sw/bin/fish exec ${pkgs.fish}/bin/fish $LOGIN_OPTION + else + [[ $SHELL == *fish ]] && SHELL=/run/current-system/sw/bin/bash + fi ''; };