diff --git a/home/graphical.nix b/home/graphical.nix index 240d2f8..66f382d 100644 --- a/home/graphical.nix +++ b/home/graphical.nix @@ -1,5 +1,10 @@ { pkgs, ... }: { + imports = [ + ./packages/librewolf + ./packages/thunderbird + ]; + home = { packages = with pkgs; @@ -7,7 +12,6 @@ adw-gtk3 blackbox-terminal discord - gapless gnome-solanum gnome-tweaks high-tide @@ -34,55 +38,26 @@ useless-gaps window-centering ]); - - file."librewolf-gnome-theme" = { - target = ".librewolf/default/chrome/librewolf-gnome-theme"; - source = fetchTarball { - url = "https://github.com/rafaelmardojai/firefox-gnome-theme/archive/v143.tar.gz"; - sha256 = "1gkfi77n8cn5xzl3wi9mggh7adirjrsnbqygg1mcvjy0ynmd6kfh"; - }; - }; - - file."thunderbird-gnome-theme" = { - target = ".thunderbird/default/chrome/thunderbird-gnome-theme"; - source = fetchTarball { - url = "https://github.com/rafaelmardojai/thunderbird-gnome-theme/archive/v115.tar.gz"; - sha256 = "1l295w61h5469328qkjggny3mjq1x0q3zr9p8pz5sq5pypc7604x"; - }; - }; }; programs.firefox.enable = true; - programs.librewolf = { - enable = true; - profiles.default = { - name = "Default"; - settings = { - "toolkit.legacyUserProfileCustomizations.stylesheets" = true; - "svg.context-properties.content.enabled" = true; - "gnomeTheme.hideSingleTab" = true; - }; - userChrome = '' - @import "librewolf-gnome-theme/userChrome.css"; - @import "librewolf-gnome-theme/theme/colors/dark.css"; - ''; - }; - }; - - programs.thunderbird = { - enable = true; - profiles.default = { - isDefault = true; - settings = { - "toolkit.legacyUserProfileCustomizations.stylesheets" = true; - "svg.context-properties.content.enabled" = true; - "gnomeTheme.hideTabbar" = true; - }; - userChrome = '' - @import "thunderbird-gnome-theme/userChrome.css"; - @import "thunderbird-gnome-theme/theme/colors/dark.css"; - ''; + xdg.desktopEntries = { + "com.raggesilver.BlackBox" = { + categories = [ + "GNOME" + "GTK" + "System" + "TerminalEmulator" + ]; + comment = "Access the terminal"; + exec = "blackbox"; + genericName = "Terminal Emulator"; + icon = "com.raggesilver.BlackBox"; + name = "Terminal"; + startupNotify = false; + terminal = false; + type = "Application"; }; }; diff --git a/home/packages/librewolf/default.nix b/home/packages/librewolf/default.nix new file mode 100644 index 0000000..b8bb3f7 --- /dev/null +++ b/home/packages/librewolf/default.nix @@ -0,0 +1,49 @@ +{ ... }: +{ + home.file."librewolf-gnome-theme" = { + target = ".librewolf/default/chrome/librewolf-gnome-theme"; + source = fetchTarball { + url = "https://github.com/rafaelmardojai/firefox-gnome-theme/archive/v143.tar.gz"; + sha256 = "1gkfi77n8cn5xzl3wi9mggh7adirjrsnbqygg1mcvjy0ynmd6kfh"; + }; + }; + + programs.librewolf = { + enable = true; + profiles.default = { + name = "Default"; + settings = { + "toolkit.legacyUserProfileCustomizations.stylesheets" = true; + "svg.context-properties.content.enabled" = true; + "gnomeTheme.hideSingleTab" = true; + }; + userChrome = '' + @import "librewolf-gnome-theme/userChrome.css"; + @import "librewolf-gnome-theme/theme/colors/dark.css"; + ''; + }; + }; + + xdg.desktopEntries.librewolf = { + categories = [ + "Network" + "WebBrowser" + ]; + comment = "Browse the Web"; + exec = "librewolf --name librewolf %U"; + genericName = "Web Browser"; + icon = ./icon.svg; + mimeType = [ + "text/html" + "text/xml" + "application/xhtml+xml" + "application/vnd.mozilla.xul+xml" + "x-scheme-handler/http" + "x-scheme-handler/https" + ]; + name = "Web"; + startupNotify = true; + terminal = false; + type = "Application"; + }; +} diff --git a/home/packages/librewolf/icon.svg b/home/packages/librewolf/icon.svg new file mode 100644 index 0000000..2a221ef --- /dev/null +++ b/home/packages/librewolf/icon.svg @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/home/packages/thunderbird/default.nix b/home/packages/thunderbird/default.nix new file mode 100644 index 0000000..223a1a6 --- /dev/null +++ b/home/packages/thunderbird/default.nix @@ -0,0 +1,51 @@ +{ ... }: +{ + home.file."thunderbird-gnome-theme" = { + target = ".thunderbird/default/chrome/thunderbird-gnome-theme"; + source = fetchTarball { + url = "https://github.com/rafaelmardojai/thunderbird-gnome-thee/archive/v115.tar.gz"; + sha256 = "1l295w61h5469328qkjggny3mjq1x0q3zr9p8pz5sq5pypc7604x"; + }; + }; + + programs.thunderbird = { + enable = true; + profiles.default = { + isDefault = true; + settings = { + "toolkit.legacyUserProfileCustomizations.stylesheets" = true; + "svg.context-properties.content.enabled" = true; + "gnomeTheme.hideTabbar" = true; + }; + userChrome = '' + @import "thunderbird-gnome-theme/userChrome.css"; + @import "thunderbird-gnome-theme/theme/colors/dark.css"; + ''; + }; + }; + + xdg.desktopEntries.thunderbird = { + categories = [ + "Network" + "Chat" + "Email" + "Feed" + "GTK" + "News" + ]; + comment = "Read and write e-mails or RSS feeds, or manage tasks on calendars."; + exec = "thunderbird --name thunderbird %U"; + genericName = "Email Client"; + icon = ./icon.svg; + mimeType = [ + "message/rfc822" + "x-scheme-handler/mailto" + "text/calendar" + "text/x-vcard" + ]; + name = "Email"; + startupNotify = true; + terminal = false; + type = "Application"; + }; +} diff --git a/home/packages/thunderbird/icon.svg b/home/packages/thunderbird/icon.svg new file mode 100644 index 0000000..f90cf95 --- /dev/null +++ b/home/packages/thunderbird/icon.svg @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/nixos/graphical.nix b/nixos/graphical.nix index cffb0a9..432e3d7 100644 --- a/nixos/graphical.nix +++ b/nixos/graphical.nix @@ -1,4 +1,9 @@ -{ lib, config, ... }: +{ + config, + lib, + pkgs, + ... +}: { options = { graphical.enable = lib.mkEnableOption "Enable graphical features"; @@ -11,6 +16,16 @@ services.displayManager.gdm.enable = true; services.desktopManager.gnome.enable = true; + environment.gnome.excludePackages = with pkgs; [ + epiphany + geary + gnome-characters + gnome-connections + gnome-console + gnome-music + gnome-tour + yelp + ]; services.gnome.gnome-browser-connector.enable = true; }; }