From b5c428822468b9a2dfb00a673c39e809f4ac0651 Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Sun, 19 Jun 2022 15:57:45 -0700 Subject: ref(home/shell): make it easier to share common things between shells I'm considering trying again fish, and there are a number of things that should be common between zsh and fish (aliases, environment variables, ...). Instead of duplicating these settings multiple time, I'm consolidating the shell configurations under `home/shell`, and I can set the shell I want to use with `my.home.shell.name`. The first step is to move the modules for fish and zsh under `home/shell`, add an interface to pick which one I want to use, and modify the `host/home.nix` configuration to keep using zsh with the new interface. Change-Id: Idb66b1a6fcc11a6eeaf5fd2d32dd3698d2d85bdf Reviewed-on: https://cl.fcuny.net/c/world/+/455 Tested-by: CI Reviewed-by: Franck Cuny --- home/fish/default.nix | 30 ------------------------------ 1 file changed, 30 deletions(-) delete mode 100644 home/fish/default.nix (limited to 'home/fish/default.nix') diff --git a/home/fish/default.nix b/home/fish/default.nix deleted file mode 100644 index 7ff4bbe..0000000 --- a/home/fish/default.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ config, lib, pkgs, ... }: -let - cfg = config.my.home.fish; - swayEnabled = config.my.home.wm.windowManager == "sway"; -in -{ - options.my.home.fish = with lib; { - enable = mkEnableOption "fish configuration"; - }; - config.programs.fish = lib.mkIf cfg.enable { - enable = true; - interactiveShellInit = '' - set fish_greeting - - # Tmux on terminal start, unless we're in a SSH connection - if status is-interactive - if test -z "$SSH_CONNECTION" - if not tmux has-session 2>/dev/null; or test -z "$TMUX" - exec tmux new-session -A -s 0 - end - end - end - ''; - loginShellInit = lib.mkIf swayEnabled '' - if test -z "$DISPLAY"; and test (tty) = "/dev/tty1" - exec sway - end - ''; - }; -} -- cgit v1.2.3