diff options
Diffstat (limited to 'components/programs')
| -rw-r--r-- | components/programs/alacritty.nix | 53 | ||||
| -rw-r--r-- | components/programs/fastfetch.nix | 57 | ||||
| -rw-r--r-- | components/programs/fonts.nix | 11 | ||||
| -rw-r--r-- | components/programs/games.nix | 16 | ||||
| -rw-r--r-- | components/programs/git.nix | 18 | ||||
| -rw-r--r-- | components/programs/keepassxc.nix | 33 | ||||
| -rw-r--r-- | components/programs/tmux.nix | 12 | ||||
| -rw-r--r-- | components/programs/zed.nix | 37 | ||||
| -rw-r--r-- | components/programs/zsh.nix | 35 |
9 files changed, 272 insertions, 0 deletions
diff --git a/components/programs/alacritty.nix b/components/programs/alacritty.nix new file mode 100644 index 0000000..da80465 --- /dev/null +++ b/components/programs/alacritty.nix @@ -0,0 +1,53 @@ +{lib, config, ...}: { + options.alacritty.enable = lib.mkEnableOption "Alacritty's config"; + + config = lib.mkIf config.alacritty.enable { + programs.alacritty = { + enable = true; + + settings = { + window = { + dimensions = { columns = 110; lines = 30; }; + padding = { x = 0; y = 0; }; + opacity = 1.0; + blur = false; + }; + + font = { + normal = { family = "IosevkaTerm NF"; style = "regular"; }; + bold = { family = "IosevkaTerm NF"; style = "bold"; }; + size = 14.00; + }; + + colors = { + primary = { + background = "#282c34"; + foreground = "#abb2bf"; + }; + + normal = { + black = "#1e2127"; + red = "#e06c75"; + green = "#98c379"; + yellow = "#d19a66"; + blue = "#61afef"; + magenta = "#c678dd"; + cyan = "#56b6c2"; + white = "#abb2bf"; + }; + + bright = { + black = "#5c6370"; + red = "#e06c75"; + green = "#98c379"; + yellow = "#d19a66"; + blue = "#61afef"; + magenta = "#c678dd"; + cyan = "#56b6c2"; + white = "#ffffff"; + }; + }; + }; + }; + }; +} diff --git a/components/programs/fastfetch.nix b/components/programs/fastfetch.nix new file mode 100644 index 0000000..63f148e --- /dev/null +++ b/components/programs/fastfetch.nix @@ -0,0 +1,57 @@ +{lib, config, ...}: { + options.fastfetch.enable = lib.mkEnableOption "Fastfetch's config"; + + config = lib.mkIf config.fastfetch.enable { + programs.fastfetch = { + enable = true; + + settings = { + display = { + size = { + maxPrefix = "MB"; + ndigits = 0; + spaceBeforeUnit = "never"; + }; + freq = { + ndigits = 3; + spaceBeforeUnit = "never"; + }; + }; + modules = [ + "title" + "separator" + "os" + { + type = "kernel"; + format = "{release}"; + } + { + type = "packages"; + combined = true; + } + "shell" + { + type = "display"; + compactType = "original"; + key = "Resolution"; + } + "de" + "wm" + "terminal" + "cpu" + { + type = "gpu"; + key = "GPU"; + format = "{name}"; + } + { + type = "memory"; + format = "{used} / {total}"; + } + "break" + "colors" + ]; + }; + }; + }; +} diff --git a/components/programs/fonts.nix b/components/programs/fonts.nix new file mode 100644 index 0000000..558cf83 --- /dev/null +++ b/components/programs/fonts.nix @@ -0,0 +1,11 @@ +{lib, config, pkgs, ...}: { + options.fonts.enable = lib.mkEnableOption "Additional fonts"; + + config = lib.mkIf config.fonts.enable { + environment.systemPackages = with pkgs; [ + noto-fonts noto-fonts-cjk-sans noto-fonts-color-emoji + nerd-fonts.iosevka-term nerd-fonts.jetbrains-mono + corefonts vista-fonts + ]; + }; +} diff --git a/components/programs/games.nix b/components/programs/games.nix new file mode 100644 index 0000000..560e210 --- /dev/null +++ b/components/programs/games.nix @@ -0,0 +1,16 @@ +{lib, config, pkgs, ...}: { + options.games.enable = lib.mkEnableOption "Games"; + + config = lib.mkIf config.games.enable { + hardware.steam-hardware.enable = true; + + #Steam + programs = { + gamemode.enable = true; + steam.enable = true; + }; + + # Packages + environment.systemPackages = with pkgs; [ prismlauncher heroic ]; + }; +} diff --git a/components/programs/git.nix b/components/programs/git.nix new file mode 100644 index 0000000..10226b8 --- /dev/null +++ b/components/programs/git.nix @@ -0,0 +1,18 @@ +{lib, config, ...}: { + options.git.enable = lib.mkEnableOption "Git CMS"; + + config = lib.mkIf config.git.enable { + programs.git = { + enable = true; + + config = { + init = { + defaultBranch = "master"; + }; + core = { + editor = "vim"; + }; + }; + }; + }; +} diff --git a/components/programs/keepassxc.nix b/components/programs/keepassxc.nix new file mode 100644 index 0000000..7211364 --- /dev/null +++ b/components/programs/keepassxc.nix @@ -0,0 +1,33 @@ +{lib, config, ...}: { + options.keepassxc.enable = lib.mkEnableOption "KeepassXC's config"; + + config = lib.mkIf config.keepassxc.enable { + xdg.autostart.enable = true; + + programs.keepassxc = { + enable = true; + autostart = true; + + settings = { + Browser.Enabled=true; + FdoSecrets.Enabled = true; + + GUI = { + MinimizeOnStartup = true; + MinimizeOnClose = true; + + ApplicationTheme = "dark"; + HideUsernames = true; + TrayIconAppearance = "monochrome-light"; + }; + + PasswordGenerator = { + Length = 128; + LowerCase = true; + UpperCase = true; + SpecialChars = true; + }; + }; + }; + }; +} diff --git a/components/programs/tmux.nix b/components/programs/tmux.nix new file mode 100644 index 0000000..db3f7a6 --- /dev/null +++ b/components/programs/tmux.nix @@ -0,0 +1,12 @@ +{lib, config, ...}: { + options.tmux.enable = lib.mkEnableOption "Tmux's config"; + + config = lib.mkIf config.tmux.enable { + programs.tmux = { + enable = true; + + baseIndex = 1; + clock24 = true; + }; + }; +} diff --git a/components/programs/zed.nix b/components/programs/zed.nix new file mode 100644 index 0000000..14f7195 --- /dev/null +++ b/components/programs/zed.nix @@ -0,0 +1,37 @@ +{lib, config, ...}: { + options.zed.enable = lib.mkEnableOption "Zed editor's config"; + + config = lib.mkIf config.zed.enable { + programs.zed-editor = { + enable = true; + + userSettings = { + telemetry = { + metrics = false; + }; + + ui_font_size = 18; + buffer_font_size = 18; + vim_mode = false; + + format_on_save = "off"; + hard_tabs = false; + tab_size = 2; + + theme = { + mode = "system"; + light = "Gruvbox Dark Soft"; + dark = "Gruvbox Dark Soft"; + }; + + terminal = { + shell = { + program = "zsh"; + }; + + cursor_shape = "bar"; + }; + }; + }; + }; +} diff --git a/components/programs/zsh.nix b/components/programs/zsh.nix new file mode 100644 index 0000000..9ace5fd --- /dev/null +++ b/components/programs/zsh.nix @@ -0,0 +1,35 @@ +{lib, config, ...}: { + options.zsh.enable = lib.mkEnableOption "ZSH config"; + + config = lib.mkIf config.zsh.enable { + programs.zsh = { + enable = true; + enableCompletion = true; + enableVteIntegration = true; + + syntaxHighlighting.enable = true; + + history.size = 10000; + + oh-my-zsh = { + enable = true; + theme = "robbyrussell"; + + plugins = [ "git" "ssh" ]; + }; + + initContent = '' + # Ctrl + arrow keys + bindkey '^[Oc' forward-word + bindkey '^[Od' backward-word + bindkey '^[[1;5D' backward-word + bindkey '^[[1;5C' forward-word + bindkey '^H' backward-kill-word + + # Theme + autoload -U colors + colors + ''; + }; + }; +} |
