summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/basic-tools/default.nix42
-rw-r--r--modules/basic-tools/fish.nix26
-rw-r--r--modules/basic-tools/zsh.nix44
-rw-r--r--modules/devtools.nix6
-rw-r--r--modules/fonts.nix43
-rw-r--r--modules/gnome.nix42
-rw-r--r--modules/sway.nix42
7 files changed, 125 insertions, 120 deletions
diff --git a/modules/basic-tools/default.nix b/modules/basic-tools/default.nix
index 1d4f2a4..9408778 100644
--- a/modules/basic-tools/default.nix
+++ b/modules/basic-tools/default.nix
@@ -6,6 +6,8 @@
./multiplexers.nix
./nix.nix
./nix-ld.nix
+ ./zsh.nix
+ ./fish.nix
];
environment.systemPackages =
@@ -68,47 +70,11 @@
// editorconf;
environment.shellAliases = {
- ls = "ls --color=auto";
- l = "ls -l";
- la = "ls -la";
- ll = "ls -lah";
- lt = "ls --tree";
vim = "nvim";
grep = "grep --color=auto";
- e = "$EDITOR";
- v = "$EDITOR";
- };
-
- users.defaultUserShell = pkgs.zsh;
- programs.zsh = {
- enable = true;
- enableCompletion = true;
- syntaxHighlighting.enable = true;
- interactiveShellInit = ''
- bindkey -e
- export HISTFILE="$HOME/.zsh_history"
- export HISTSIZE=10000000
- export SAVEHIST=10000000
- setopt HIST_IGNORE_ALL_DUPS
- # allow comments
- setopt interactivecomments
- '';
- promptInit = ''
- source ${pkgs.liquidprompt}/share/zsh/plugins/liquidprompt/liquidprompt
- '';
- };
-
- environment.etc.liquidpromptrc = {
- text = ''
- LP_ENABLE_SSH_COLORS=1
- LP_ENABLE_TITLE=1
- LP_ENABLE_SCREEN_TITLE=1
- LP_ENABLE_TEMP=0
- LP_ENABLE_SVN=0
- LP_BATTERY_THRESHOLD=15
- LP_SSH_COLORS=1
- '';
};
+ users.defaultUserShell = (if config.networking.hostName == "toaster" then pkgs.fish else pkgs.zsh);
+ users.users.root.shell = pkgs.zsh; # keep root shell posix compatible
programs.iftop.enable = true;
programs.mosh.enable = true;
diff --git a/modules/basic-tools/fish.nix b/modules/basic-tools/fish.nix
new file mode 100644
index 0000000..b948149
--- /dev/null
+++ b/modules/basic-tools/fish.nix
@@ -0,0 +1,26 @@
+{ pkgs, ... }:
+{
+ environment.systemPackages = with pkgs; [
+ lsd
+ fzf
+ grc
+ fishPlugins.done
+ fishPlugins.fzf-fish
+ fishPlugins.tide
+ fishPlugins.grc
+ ];
+
+ programs.fish = {
+ enable = true;
+ interactiveShellInit = ''
+ set fish_greeting
+ '';
+ shellAliases = {
+ ls = "lsd --icon=never";
+ l = "ls -l";
+ ll = "ls -la";
+ vim = "nvim";
+ grep = "grep --color=auto";
+ };
+ };
+}
diff --git a/modules/basic-tools/zsh.nix b/modules/basic-tools/zsh.nix
new file mode 100644
index 0000000..c474267
--- /dev/null
+++ b/modules/basic-tools/zsh.nix
@@ -0,0 +1,44 @@
+{ pkgs, ... }:
+{
+ environment.shellAliases = {
+ ls = "ls --color=auto";
+ l = "ls -l";
+ la = "ls -la";
+ ll = "ls -lah";
+ lt = "ls --tree";
+ vim = "nvim";
+ grep = "grep --color=auto";
+ e = "$EDITOR";
+ v = "$EDITOR";
+ };
+
+ programs.zsh = {
+ enable = true;
+ enableCompletion = true;
+ syntaxHighlighting.enable = true;
+ interactiveShellInit = ''
+ bindkey -e
+ export HISTFILE="$HOME/.zsh_history"
+ export HISTSIZE=10000000
+ export SAVEHIST=10000000
+ setopt HIST_IGNORE_ALL_DUPS
+ # allow comments
+ setopt interactivecomments
+ '';
+ promptInit = ''
+ source ${pkgs.liquidprompt}/share/zsh/plugins/liquidprompt/liquidprompt
+ '';
+ };
+
+ environment.etc.liquidpromptrc = {
+ text = ''
+ LP_ENABLE_SSH_COLORS=1
+ LP_ENABLE_TITLE=1
+ LP_ENABLE_SCREEN_TITLE=1
+ LP_ENABLE_TEMP=0
+ LP_ENABLE_SVN=0
+ LP_BATTERY_THRESHOLD=15
+ LP_SSH_COLORS=1
+ '';
+ };
+}
diff --git a/modules/devtools.nix b/modules/devtools.nix
index f91a57e..bfb0905 100644
--- a/modules/devtools.nix
+++ b/modules/devtools.nix
@@ -30,7 +30,7 @@
freecad-wayland
imhex
python313Full
- pkgs.nixfmt-rfc-style
+ nixfmt-rfc-style
treefmt
android-tools
];
@@ -58,6 +58,10 @@
programs.zsh.interactiveShellInit = ''
eval "$(direnv hook zsh)"
'';
+ programs.fish.interactiveShellInit = ''
+ direnv hook fish | source
+ '';
+
# nix options for derivations to persist garbage collection
nix.extraOptions = ''
keep-outputs = true
diff --git a/modules/fonts.nix b/modules/fonts.nix
new file mode 100644
index 0000000..7ee909b
--- /dev/null
+++ b/modules/fonts.nix
@@ -0,0 +1,43 @@
+{ pkgs, ... }:
+{
+ fonts.packages = with pkgs; [
+ monoid
+ font-awesome
+ dejavu_fonts
+ julia-mono
+ uw-ttyp0
+ gohufont
+ spleen
+ terminus_font
+ creep
+ corefonts
+ dina-font
+ fira
+ fira-mono
+ hack-font
+ liberation_ttf
+ noto-fonts
+ noto-fonts-cjk-sans
+ noto-fonts-emoji
+ noto-fonts-extra
+ proggyfonts
+ symbola
+ open-sans
+ twemoji-color-font
+ twitter-color-emoji
+ iosevka-bin
+ (nerdfonts.override { fonts = [ "Hack" ]; })
+ ];
+
+ fonts.enableDefaultPackages = true;
+ fonts.fontconfig = {
+ enable = true;
+ allowBitmaps = true;
+ useEmbeddedBitmaps = true;
+ defaultFonts.emoji = [
+ "Twitter Color Emoji"
+ "Noto Color Emoji"
+ ];
+ };
+
+}
diff --git a/modules/gnome.nix b/modules/gnome.nix
index a7b0b62..897c4d3 100644
--- a/modules/gnome.nix
+++ b/modules/gnome.nix
@@ -1,8 +1,9 @@
-{ config, pkgs, ... }:
+{ pkgs, ... }:
{
imports = [
./desktop-software.nix
+ ./fonts.nix
];
environment.systemPackages = with pkgs; [
amberol
@@ -62,45 +63,6 @@
programs.zsh.vteIntegration = true;
programs.bash.vteIntegration = true;
- fonts.packages = with pkgs; [
- monoid
- font-awesome
- dejavu_fonts
- julia-mono
- uw-ttyp0
- gohufont
- spleen
- terminus_font
- creep
- corefonts
- dina-font
- fira
- fira-mono
- hack-font
- liberation_ttf
- noto-fonts
- noto-fonts-cjk-sans
- noto-fonts-emoji
- noto-fonts-extra
- proggyfonts
- symbola
- open-sans
- twemoji-color-font
- twitter-color-emoji
- iosevka-bin
- ];
-
- fonts.enableDefaultPackages = true;
- fonts.fontconfig = {
- enable = true;
- allowBitmaps = true;
- useEmbeddedBitmaps = true;
- defaultFonts.emoji = [
- "Twitter Color Emoji"
- "Noto Color Emoji"
- ];
- };
-
hardware.bluetooth.enable = true;
}
diff --git a/modules/sway.nix b/modules/sway.nix
index f536bcb..1ce6f63 100644
--- a/modules/sway.nix
+++ b/modules/sway.nix
@@ -3,6 +3,7 @@
{
imports = [
./desktop-software.nix
+ ./fonts.nix
];
environment.systemPackages = with pkgs; [
screen-message
@@ -25,47 +26,6 @@
audacity
];
- #on the desktop, we need nice fonts ^^
- fonts.packages = with pkgs; [
- monoid
- font-awesome
- dejavu_fonts
- julia-mono
- uw-ttyp0
- gohufont
- spleen
- terminus_font
- creep
- corefonts
- dina-font
- fira
- fira-mono
- hack-font
- liberation_ttf
- noto-fonts
- noto-fonts-cjk-sans
- noto-fonts-emoji
- noto-fonts-extra
- proggyfonts
- symbola
- open-sans
- twemoji-color-font
- twitter-color-emoji
- iosevka
- nerd-fonts.hack
- ];
-
- fonts.enableDefaultPackages = true;
- fonts.fontconfig = {
- enable = true;
- allowBitmaps = true;
- useEmbeddedBitmaps = true;
- defaultFonts.emoji = [
- "Noto Color Emoji"
- "Twitter Color Emoji"
- ];
- };
-
# Enable sound.
security.rtkit.enable = true;