diff options
Diffstat (limited to 'modules/desktop')
23 files changed, 357 insertions, 314 deletions
diff --git a/modules/desktop/hjem/default.nix b/modules/desktop/hjem/default.nix new file mode 100644 index 0000000..f7dd95e --- /dev/null +++ b/modules/desktop/hjem/default.nix @@ -0,0 +1,13 @@ +{ + imports = [ + ./gtk.nix + + ./wm/sway.nix + ./wm/dunst.nix + ./wm/fuzzel.nix + + ./programs/foot.nix + ./programs/firefox.nix + ./programs/research.nix + ]; +} diff --git a/modules/desktop/hjem/gtk.nix b/modules/desktop/hjem/gtk.nix new file mode 100644 index 0000000..3ea3b37 --- /dev/null +++ b/modules/desktop/hjem/gtk.nix @@ -0,0 +1,38 @@ +{ + pkgs, + config, + lib, + ... +}: let + cfg = config.collinux.desktop.gtk; +in + lib.mkIf cfg.enable { + packages = with pkgs; [ + dconf + + papirus-icon-theme + cfg.cursor_data.package + cfg.theme_data.package + ]; + + xdg.config.files = let + value.Settings = { + gtk-cursor-theme-name = cfg.cursor_data.name; + gtk-cursor-theme-size = 24; + gtk-icon-theme-name = "Papirus"; + gtk-theme-name = cfg.theme_data.name; + }; + in { + "gtk-3.0/settings.ini" = { + generator = lib.generators.toINI {}; + inherit value; + }; + "gtk-4.0/settings.ini" = { + generator = lib.generators.toINI {}; + inherit value; + }; + "gtk-4.0/gtk.css".text = '' + @import url("file://${cfg.theme_data.package}/gtk-4.0/gtk.css"); + ''; + }; + } diff --git a/modules/desktop/hjem/programs/firefox.nix b/modules/desktop/hjem/programs/firefox.nix new file mode 100644 index 0000000..73040d2 --- /dev/null +++ b/modules/desktop/hjem/programs/firefox.nix @@ -0,0 +1,26 @@ +{ + pkgs, + lib, + config, + ... +}: let + cfg = config.collinux.desktop.programs.firefox; +in + lib.mkIf cfg.enable { + files.".mozilla/firefox/profiles.ini" = { + generator = lib.generators.toINI {}; + value = { + Profile0 = { + Name = "collin"; + IsRelative = 1; + Path = "collin"; + Default = 1; + }; + General = { + StartWithLastProfile = 1; + Version = 2; + }; + }; + }; + packages = [pkgs.firefox]; + } diff --git a/modules/desktop/system/programs/foot.nix b/modules/desktop/hjem/programs/foot.nix index 1b99ce3..4d630c6 100644 --- a/modules/desktop/system/programs/foot.nix +++ b/modules/desktop/hjem/programs/foot.nix @@ -50,14 +50,12 @@ }; in lib.mkIf cfg.enable { - hjem.users."${config.collinux.user.name}" = { - files = { - ".config/foot/foot.ini" = { - generator = lib.generators.toINI {}; - value = settings; - }; + files = { + ".config/foot/foot.ini" = { + generator = lib.generators.toINI {}; + value = settings; }; - - packages = [pkgs.foot]; }; + + packages = [pkgs.foot]; } diff --git a/modules/desktop/hjem/programs/research.nix b/modules/desktop/hjem/programs/research.nix new file mode 100644 index 0000000..3bfde76 --- /dev/null +++ b/modules/desktop/hjem/programs/research.nix @@ -0,0 +1,26 @@ +{ + config, + pkgs, + lib, + ... +}: let + cfg = config.collinux.desktop.programs.research; +in + lib.mkIf cfg.enable { + packages = with pkgs; [ + zotero + zathura + xournalpp + ]; + files = { + ".config/xournalpp/toolbar.ini" = { + generator = lib.generators.toINI {}; + value = { + "Default" = { + toolbarTop1 = "ERASER,PEN,HIGHLIGHTER,SELECT_PDF_TEXT_LINEAR,SEPARATOR,TEXT,MATH_TEX,IMAGE,SPACER,FINE,MEDIUM,THICK,VERY_THICK,SEPARATOR,SELECT_FONT,COLOR(6),COLOR(8),COLOR(9),COLOR(3),COLOR(2),COLOR(4),COLOR(7),COLOR(5),COLOR(0),SEPARATOR"; + name = "Default"; + }; + }; + }; + }; + } diff --git a/modules/desktop/system/components/dunst.nix b/modules/desktop/hjem/wm/dunst.nix index 1069087..38a8240 100644 --- a/modules/desktop/system/components/dunst.nix +++ b/modules/desktop/hjem/wm/dunst.nix @@ -4,7 +4,7 @@ pkgs, ... }: let - cfg = config.collinux.desktop.components.dunst; + cfg = config.collinux.desktop.sway.components.dunst; settings = '' [global] @@ -31,8 +31,6 @@ ''; in lib.mkIf cfg.enable { - hjem.users."${config.collinux.user.name}" = { - files.".config/dunst/dunstrc".text = settings; - packages = [pkgs.dunst pkgs.inotify-tools]; - }; + files.".config/dunst/dunstrc".text = settings; + packages = with pkgs; [dunst inotify-tools]; } diff --git a/modules/desktop/system/components/fuzzel.nix b/modules/desktop/hjem/wm/fuzzel.nix index f5937c6..7b9d075 100644 --- a/modules/desktop/system/components/fuzzel.nix +++ b/modules/desktop/hjem/wm/fuzzel.nix @@ -4,12 +4,11 @@ pkgs, ... }: let - cfg = config.collinux.desktop.components.fuzzel; - ini' = pkgs.formats.ini {}; + cfg = config.collinux.desktop.sway.components.fuzzel; - settings = ini'.generate "fuzzel.ini" { + settings = { main = { - prompt = " "; + prompt = ""; dpi-aware = false; font = "Iosevka Nerd Font"; @@ -41,10 +40,10 @@ }; in lib.mkIf cfg.enable { - hjem.users."${config.collinux.user.name}" = { - files = { - ".config/fuzzel/fuzzel.ini".source = settings; - }; - packages = [pkgs.fuzzel]; + files.".config/fuzzel/fuzzel.ini" = { + generator = lib.generators.toINI {}; + value = settings; }; + + packages = [pkgs.fuzzel]; } diff --git a/modules/desktop/system/environments/sway.nix b/modules/desktop/hjem/wm/sway.nix index 4ea3378..1cd7750 100644 --- a/modules/desktop/system/environments/sway.nix +++ b/modules/desktop/hjem/wm/sway.nix @@ -58,48 +58,53 @@ bindsym Mod4+2 workspace number 2 bindsym Mod4+3 workspace number 3 bindsym Mod4+4 workspace number 4 + bindsym Mod4+5 workspace number 5 + bindsym Mod4+6 workspace number 6 + bindsym Mod4+7 workspace number 7 + bindsym Mod4+8 workspace number 8 + bindsym Mod4+9 workspace number 9 + bindsym Mod4+Shift+1 move container to workspace number 1 bindsym Mod4+Shift+2 move container to workspace number 2 bindsym Mod4+Shift+3 move container to workspace number 3 bindsym Mod4+Shift+4 move container to workspace number 4 + bindsym Mod4+Shift+5 move container to workspace number 5 + bindsym Mod4+Shift+6 move container to workspace number 6 + bindsym Mod4+Shift+7 move container to workspace number 7 + bindsym Mod4+Shift+8 move container to workspace number 8 + bindsym Mod4+Shift+9 move container to workspace number 9 - bindsym Mod4+Return exec "${pkgs.foot}/bin/footclient" + bindsym Mod4+Return exec ${pkgs.foot}/bin/footclient bindsym Mod4+Shift+Return exec ${pkgs.foot}/bin/foot - bindsym Mod4+Space exec ${pkgs.fuzzel}/bin/fuzzel - bindsym Mod4+b exec ${pkgs.firefox}/bin/firefox - bindsym Mod4+Shift+b exec ${pkgs.qutebrowser}/bin/qutebrowser + bindsym Mod4+Space exec ${pkgs.fuzzel}/bin/fuzzel + bindsym Mod4+b exec ${pkgs.firefox}/bin/firefox + bindsym Mod4+Shift+b exec ${pkgs.qutebrowser}/bin/qutebrowser bindsym Mod4+q kill - bindsym XF86AudioRaiseVolume exec 'wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+; dunstify -t 300 -h string:x-canonical-private-synchronous:audio "Volume: " -h "int:value:$(dec=$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | cut -d\" \" -f2);echo "$dec * 100" | bc)"' - bindsym XF86AudioLowerVolume exec 'wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-; dunstify -t 300 -h string:x-canonical-private-synchronous:audio "Volume: " -h "int:value:$(dec=$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | cut -d\" \" -f2);echo "$dec * 100" | bc)"' + bindsym XF86AudioRaiseVolume exec 'wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+; dunstify -t 300 -h string:x-canonical-private-synchronous:audio "Volume: " -h "int:value:$(dec=$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | cut -d\" \" -f2);echo "$dec * 100" | ${pkgs.bc}/bin/bc)"' + bindsym XF86AudioLowerVolume exec 'wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-; dunstify -t 300 -h string:x-canonical-private-synchronous:audio "Volume: " -h "int:value:$(dec=$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | cut -d\" \" -f2);echo "$dec * 100" | ${pkgs.bc}/bin/bc)"' bindsym XF86MonBrightnessUp exec 'brightnessctl set 5%+; dunstify -t 300 -h string:x-canonical-private-synchronous:brightness "Brightness: " -h "int:value:$(g=$(brightnessctl get);m=$(brightnessctl max);echo $((g * 100 / m)))"' bindsym XF86MonBrightnessDown exec 'brightnessctl set 5%-; dunstify -t 300 -h string:x-canonical-private-synchronous:brightness "Brightness: " -h "int:value:$(g=$(brightnessctl get);m=$(brightnessctl max);echo $((g * 100 / m)))"' + bindsym Home exec 'playerctl previous' + bindsym End exec 'playerctl play-pause' + bindsym Insert exec 'playerctl next' + default_border pixel 2 smart_borders on smart_gaps on ''; in lib.mkIf cfg.enable { - hjem.users."${config.collinux.user.name}" = { - files = { - ".config/sway/config".text = settings; - ".config/sway/catppuccin-mocha".text = colors; - }; - - packages = [pkgs.sway pkgs.bc pkgs.brightnessctl]; + files = { + ".config/sway/config".text = settings; + ".config/sway/catppuccin-mocha".text = colors; }; - # Greetd - services.greetd = { - enable = true; - settings = rec { - initial_session = { - command = "${pkgs.sway}/bin/sway"; - user = config.collinux.user.name; - }; - default_session = initial_session; - }; - }; + packages = with pkgs; [ + sway + brightnessctl + playerctl + ]; } diff --git a/modules/desktop/home/default.nix b/modules/desktop/home/default.nix deleted file mode 100644 index 914b450..0000000 --- a/modules/desktop/home/default.nix +++ /dev/null @@ -1,11 +0,0 @@ -{ - lib, - config, - ... -}: { - imports = [ - ./gtk - ]; - - qt.style = lib.optionalAttrs (config.collinux.theme == "adwaita") {name = "adwaita-dark";}; -} diff --git a/modules/desktop/home/gtk/adwaita.nix b/modules/desktop/home/gtk/adwaita.nix deleted file mode 100644 index 1a17d13..0000000 --- a/modules/desktop/home/gtk/adwaita.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ - pkgs, - lib, - config, - ... -}: let - cfg = config.collinux.desktop.gtk; -in - lib.mkIf (cfg.theme == "adwaita") { - home.pointerCursor = { - gtk.enable = true; - dotIcons.enable = false; - - package = pkgs.vanilla-dmz; - name = "Vanilla-DMZ"; - size = 24; - }; - - gtk.theme = { - name = "adw-gtk3"; - package = pkgs.adw-gtk3; - }; - - dconf = { - enable = true; - settings = { - "org/gnome/desktop/interface" = { - color-scheme = "prefer-dark"; - enable-hot-corners = false; - }; - }; - }; - } diff --git a/modules/desktop/home/gtk/catppuccin.nix b/modules/desktop/home/gtk/catppuccin.nix deleted file mode 100644 index 81f0d3d..0000000 --- a/modules/desktop/home/gtk/catppuccin.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ - pkgs, - lib, - config, - ... -}: let - cfg = config.collinux.desktop.gtk; -in - lib.mkIf (cfg.theme == "catppuccin") { - home.pointerCursor = { - hyprcursor = { - enable = true; - size = 24; - }; - gtk.enable = true; - dotIcons.enable = false; - - package = pkgs.catppuccin-cursors.mochaDark; - name = "catppuccin-mocha-dark-cursors"; - size = 24; - }; - - gtk = { - theme = { - package = pkgs.catppuccin-gtk.override { - accents = ["blue"]; - variant = "mocha"; - size = "standard"; - }; - name = "catppuccin-mocha-blue-standard"; - }; - }; - } diff --git a/modules/desktop/home/gtk/default.nix b/modules/desktop/home/gtk/default.nix deleted file mode 100644 index 8dc00f2..0000000 --- a/modules/desktop/home/gtk/default.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ - pkgs, - config, - lib, - ... -}: let - cfg = config.collinux.gtk; -in { - imports = [ - ./catppuccin.nix - ./adwaita.nix - ]; - - config = { - home.packages = [pkgs.dconf]; - - gtk = { - enable = true; - iconTheme = { - package = pkgs.papirus-icon-theme; - name = "Papirus"; - }; - gtk2.configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc"; - }; - }; -} diff --git a/modules/desktop/nixos/default.nix b/modules/desktop/nixos/default.nix new file mode 100644 index 0000000..1301483 --- /dev/null +++ b/modules/desktop/nixos/default.nix @@ -0,0 +1,12 @@ +{...}: { + imports = [ + ./gnome.nix + ./fonts.nix + + ./greeters/greetd.nix + ./greeters/gdm.nix + + ./programs/firefox.nix + ./programs/blackbox.nix + ]; +} diff --git a/modules/desktop/nixos/fonts.nix b/modules/desktop/nixos/fonts.nix new file mode 100644 index 0000000..3f10d92 --- /dev/null +++ b/modules/desktop/nixos/fonts.nix @@ -0,0 +1,8 @@ +{pkgs, ...}: { + fonts = { + enableDefaultPackages = false; + # fontDir.enable = true; + fontconfig.enable = true; + packages = [pkgs.nerd-fonts.iosevka pkgs.ibm-plex]; # for terminal (blackbox or foot) + }; +} diff --git a/modules/desktop/system/environments/gnome.nix b/modules/desktop/nixos/gnome.nix index e298756..c88a809 100644 --- a/modules/desktop/system/environments/gnome.nix +++ b/modules/desktop/nixos/gnome.nix @@ -7,18 +7,14 @@ cfg = config.collinux.desktop.gnome; in lib.mkIf cfg.enable { - services.displayManager.gdm = { - enable = true; - wayland = true; - }; services.desktopManager.gnome.enable = true; environment.gnome.excludePackages = with pkgs; [ orca evince - file-roller + # file-roller geary - gnome-disk-utility + # gnome-disk-utility seahorse # sushi # sysprof @@ -85,6 +81,12 @@ in sleep-inactive-ac-type = "nothing"; }; + # Theming, etc + "org/gnome/desktop/interface" = { + color-scheme = "prefer-dark"; + enable-hot-corners = false; + }; + # Keybindings "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = { binding = "<Super>Return"; diff --git a/modules/desktop/nixos/greeters/gdm.nix b/modules/desktop/nixos/greeters/gdm.nix new file mode 100644 index 0000000..598114a --- /dev/null +++ b/modules/desktop/nixos/greeters/gdm.nix @@ -0,0 +1,13 @@ +{ + config, + lib, + ... +}: let + cfg = config.collinux.desktop.gdm; +in + lib.mkIf cfg.enable { + services.displayManager.gdm = { + enable = true; + wayland = true; + }; + } diff --git a/modules/desktop/nixos/greeters/greetd.nix b/modules/desktop/nixos/greeters/greetd.nix new file mode 100644 index 0000000..42ff9a7 --- /dev/null +++ b/modules/desktop/nixos/greeters/greetd.nix @@ -0,0 +1,19 @@ +{ + config, + lib, + ... +}: let + cfg = config.collinux.desktop.greetd; +in + lib.mkIf cfg.enable { + services.greetd = { + enable = true; + settings = rec { + initial_session = { + command = lib.getExe cfg.command; + user = config.collinux.user.name; + }; + default_session = initial_session; + }; + }; + } diff --git a/modules/desktop/system/programs/blackbox.nix b/modules/desktop/nixos/programs/blackbox.nix index 9cff44a..9cff44a 100644 --- a/modules/desktop/system/programs/blackbox.nix +++ b/modules/desktop/nixos/programs/blackbox.nix diff --git a/modules/desktop/nixos/programs/firefox.nix b/modules/desktop/nixos/programs/firefox.nix new file mode 100644 index 0000000..f2daf43 --- /dev/null +++ b/modules/desktop/nixos/programs/firefox.nix @@ -0,0 +1,68 @@ +{ + pkgs, + lib, + config, + ... +}: let + cfg = config.collinux.desktop.programs.firefox; +in + lib.mkIf cfg.enable { + programs.firefox = { + enable = true; + policies = { + PasswordManagerEnabled = false; # use bitwarden instead + DisableAccounts = true; + DisablePocket = true; + DisplayBookmarksToolbar = "always"; + + OverrideFirstRunPage = ""; + OverridePostUpdatePage = ""; + + NewTabPage = false; + + Preferences = let + opt = Value: { + inherit Value; + Status = "locked"; + }; + in { + "toolkit.legacyUserProfileCustomizations.stylesheets" = opt true; + "browser.tabs.inTitlebar" = opt 0; + "browser.tabs.hoverPreview.enabled" = opt 0; + + "browser.tabs.loadBookmarksInTabs" = opt true; + + "accessibility.force_disabled" = opt 1; + + "browser.compactmode.show" = opt true; + "browser.uidensity" = opt 1; + + "media.webspeech.synth.enabled" = opt false; # im not disabled + "media.webspeech.synth.dont_notify_on_error" = opt true; + }; + + ExtensionSettings = let + ext = name: { + installation_mode = "force_installed"; + install_url = "https://addons.mozilla.org/firefox/downloads/latest/${name}/latest.xpi"; + }; + in + { + "{446900e4-71c2-419f-a6a7-df9c091e268b}" = ext "bitwarden-password-manager"; + "uBlock0@raymondhill.net" = ext "uBlock0@raymondhill.net"; + "addon@darkreader.org" = ext "addon@darkreader.org"; + } + // (lib.optionalAttrs (cfg.theme == "catppuccin") { + "{88b098c8-19be-421e-8ffa-85ddd1f3f004}" = ext "catppuccin-mocha-blue"; + }) + // (lib.optionalAttrs (cfg.extensions.zotero.enable) { + "zotero@chnm.gmu.edu" = { + installation_mode = "force_installed"; + install_url = "https://download.zotero.org/connector/firefox/release/Zotero_Connector-5.0.181.xpi"; + }; + }); + }; + }; + + services.speechd.enable = lib.mkForce false; # gets installed by firefox, but we don't need it + } diff --git a/modules/desktop/options.nix b/modules/desktop/options.nix index 6b1e991..994b13d 100644 --- a/modules/desktop/options.nix +++ b/modules/desktop/options.nix @@ -1,4 +1,5 @@ { + pkgs, config, lib, my-lib, @@ -9,32 +10,86 @@ in { options = { collinux.desktop = { - greeter = mkOption { - type = types.enum ["gdm" "greetd"]; - default = let - cfg = config.collinux.desktop; - in - if (cfg.sway.enable && !cfg.gnome.enable) - then "greetd" - else "gdm"; - }; - wallpaper = mkOption { - type = types.path; + type = with types; oneOf [str path]; + description = "File to use as the wallpaper on this machine"; }; - components = { - waybar = mkProgramOption "waybar"; - dunst = mkProgramOption "dunst"; - fuzzel = mkProgramOption "fuzzel"; + greetd = { + enable = mkEnableOption "greetd greeter"; + command = mkOption { + type = lib.types.package; + default = let + cfg = config.collinux.desktop; + in + if (cfg.sway.enable && !cfg.gnome.enable) + then pkgs.sway + else null; + }; }; + gdm.enable = mkEnableOption "gdm display manager"; - sway.enable = mkEnableOption "sway"; + sway = { + enable = mkEnableOption "sway"; + components = { + # waybar = mkProgramOption "waybar"; + dunst = mkProgramOption "dunst"; + fuzzel = mkProgramOption "fuzzel"; + }; + }; gnome.enable = mkEnableOption "gnome"; - gtk.theme = mkOption { - type = types.enum ["catppuccin" "adwaita"]; - default = config.collinux.theme; + gtk = { + enable = mkEnableOption "gtk theming"; + theme = mkOption { + type = types.enum ["catppuccin" "adwaita"]; + default = config.collinux.theme; + }; + cursor_data = { + package = mkOption { + type = lib.types.package; + default = + if (config.collinux.desktop.gtk.theme == "catppuccin") + then pkgs.catppuccin-cursors.mochaDark + else if (config.collinux.desktop.gtk.theme == "adwaita") + then pkgs.vanilla-dmz + else null; + }; + name = mkOption { + type = lib.types.str; + default = + if (config.collinux.desktop.gtk.theme == "catppuccin") + then "catppuccin-mocha-dark-cursors" + else if (config.collinux.desktop.gtk.theme == "adwaita") + then "Vanilla-DMZ" + else null; + }; + }; + theme_data = { + package = mkOption { + type = lib.types.package; + default = + if (config.collinux.desktop.gtk.theme == "catppuccin") + then + (pkgs.catppuccin-gtk.override { + variant = "mocha"; + accents = ["blue"]; + size = "standard"; + }) + else if (config.collinux.desktop.gtk.theme == "adwaita") + then pkgs.adw-gtk3 + else ""; + }; + name = mkOption { + type = lib.types.str; + default = + if (config.collinux.desktop.gtk.theme == "catppuccin") + then "catppuccin-mocha-blue-standard" + else if (config.collinux.desktop.gtk.theme == "adwaita") + then "adw-gtk3" + else ""; + }; + }; }; programs = { @@ -48,11 +103,17 @@ in { type = types.enum ["none" "catppuccin" "adwaita"]; default = config.collinux.theme; }; + extensions.zotero.enable = mkOption { + description = "install Zotero Connector for Firefox"; + default = config.collinux.desktop.programs.research.enable; + }; }; foot.enable = mkEnableOption "foot"; blackbox.enable = mkEnableOption "blackbox"; alacritty.enable = mkEnableOption "alacritty"; + + research.enable = mkEnableOption "zathura, Xournal++, Zotero, Zotero Connector"; }; }; }; diff --git a/modules/desktop/system/default.nix b/modules/desktop/system/default.nix deleted file mode 100644 index 8827070..0000000 --- a/modules/desktop/system/default.nix +++ /dev/null @@ -1,14 +0,0 @@ -{...}: { - imports = [ - ./environments/gnome.nix - ./environments/sway.nix - - ./programs/firefox.nix - ./programs/foot.nix - ./programs/blackbox.nix - ./programs/alacritty.nix - - ./components/fuzzel.nix - ./components/dunst.nix - ]; -} diff --git a/modules/desktop/system/programs/alacritty.nix b/modules/desktop/system/programs/alacritty.nix deleted file mode 100644 index f73a901..0000000 --- a/modules/desktop/system/programs/alacritty.nix +++ /dev/null @@ -1,76 +0,0 @@ -{ - pkgs, - config, - lib, - ... -}: let - cfg = config.collinux.desktop.programs.alacritty; -in - lib.mkIf cfg.enable { - hjem.users."${config.collinux.user.name}" = { - files.".config/alacritty/alacritty.toml" = { - value = { - general = { - import = ["keys.toml" "colors.toml"]; - live_config_reload = true; - }; - font = { - normal.family = "Iosevka Nerd Font"; - size = 12; - }; - }; - generator = (pkgs.formats.toml {}).generate "alacritty.toml"; - }; - - files.".config/alacritty/colors.toml".text = '' - [colors] - draw_bold_text_with_bright_colors = false - - # Default colors - [colors.primary] - background = '#242424' - foreground = '#C5C6C5' - - # Colors the cursor will use if `custom_cursor_colors` is true - [colors.cursor] - text = '#2D3234' - cursor = '#C5C6C5' - - # Normal colors - [colors.normal] - black = '#2D3234' - red = '#FFA500' - green = '#6FEE91' - yellow = '#91EE6F' - blue = '#916FB4' - magenta = '#EE6F91' - cyan = '#6F91B4' - white = '#C5C6C5' - - # Bright colors - [colors.bright] - black = '#566164' - red = '#FFFF60' - green = '#33393B' - yellow = '#4B5356' - blue = '#919494' - magenta = '#D3D4D5' - cyan = '#EE6F6F' - white = '#EEEEEC' - ''; - - files.".config/alacritty/keys.toml".text = '' - [[keyboard.bindings]] - chars = "\u001b[27;5;9~" - key = "Tab" - mods = "Control" - - [[keyboard.bindings]] - chars = "\u001b[27;5;13~" - key = "Enter" - mods = "Control" - ''; - - packages = [pkgs.alacritty]; - }; - } diff --git a/modules/desktop/system/programs/firefox.nix b/modules/desktop/system/programs/firefox.nix deleted file mode 100644 index 7f4435b..0000000 --- a/modules/desktop/system/programs/firefox.nix +++ /dev/null @@ -1,50 +0,0 @@ -{ - lib, - config, - ... -}: let - cfg = config.collinux.desktop.programs.firefox; -in - lib.mkIf cfg.enable { - programs.firefox = { - enable = true; - policies = { - PasswordManagerEnabled = false; # use bitwarden instead - DisableAccounts = true; - DisablePocket = true; - - OverrideFirstRunPage = ""; - OverridePostUpdatePage = ""; - - ExtensionSettings = let - ext = name: { - installation_mode = "force_installed"; - install_url = "https://addons.mozilla.org/firefox/downloads/latest/${name}/latest.xpi"; - }; - in - lib.mkMerge [ - { - "{446900e4-71c2-419f-a6a7-df9c091e268b}" = ext "bitwarden-password-manager"; - "uBlock0@raymondhill.net" = ext "uBlock0@raymondhill.net"; - } - (lib.mkIf (cfg.theme == "catppuccin") { - "{88b098c8-19be-421e-8ffa-85ddd1f3f004}" = ext "catppuccin-mocha-blue"; - }) - ]; - }; - }; - - hjem.users."${config.collinux.user.name}".files = { - ".mozilla/firefox/profiles.ini".text = '' - [Profile0] - Name=collin - IsRelative=1 - Path=collin - Default=1 - - [General] - StartWithLastProfile=1 - Version=2 - ''; - }; - } |
