diff options
Diffstat (limited to 'share/home/firefox')
| -rw-r--r-- | share/home/firefox/default.nix | 62 | ||||
| -rw-r--r-- | share/home/firefox/usercss/compact-about-config.css | 24 | ||||
| -rw-r--r-- | share/home/firefox/usercss/context-menu.css | 12 | ||||
| -rw-r--r-- | share/home/firefox/usercss/tab-separator-lines.css | 23 | ||||
| -rw-r--r-- | share/home/firefox/usercss/unified-extensions-view.css | 46 |
5 files changed, 167 insertions, 0 deletions
diff --git a/share/home/firefox/default.nix b/share/home/firefox/default.nix new file mode 100644 index 0000000..f1ee260 --- /dev/null +++ b/share/home/firefox/default.nix @@ -0,0 +1,62 @@ +{ pkgs, ... }: +let + # Concatenate all files in the `./usercss` directory into one string + css-files = + map (n: ./usercss/${n}) (builtins.attrNames (builtins.readDir ./usercss)); + userChrome = builtins.concatStringsSep "\n" (map builtins.readFile css-files); +in +{ + programs.firefox = { + enable = true; + profiles = { + alice = { + name = "alice"; + isDefault = true; + inherit userChrome; + + search = { + default = "DuckDuckGo"; + engines = { + "Nix Packages" = { + urls = [{ + template = "https://search.nixos.org/packages"; + params = [ + { + name = "type"; + value = "packages"; + } + { + name = "query"; + value = "{searchTerms}"; + } + ]; + }]; + + icon = + "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = [ "@np" ]; + }; + + "NixOS Wiki" = { + urls = [{ + template = "https://nixos.wiki/index.php?search={searchTerms}"; + }]; + iconUpdateURL = "https://nixos.wiki/favicon.png"; + updateInterval = 24 * 60 * 60 * 1000; # every day + definedAliases = [ "@nw" ]; + }; + + "Bing".metaData.hidden = true; + # builtin engines only support specifying one additional alias + "Google".medaData.alias = "@g"; + }; + }; # end of search + + settings = { + "browser.compactmode.show" = true; + "toolkit.legacyUserProfileCustomizations.stylesheets" = true; + }; + }; # end of alice (profile) + }; # end of profiles + }; +} diff --git a/share/home/firefox/usercss/compact-about-config.css b/share/home/firefox/usercss/compact-about-config.css new file mode 100644 index 0000000..55e30f7 --- /dev/null +++ b/share/home/firefox/usercss/compact-about-config.css @@ -0,0 +1,24 @@ +/* Source file https://github.com/MrOtherGuy/firefox-csshacks/tree/master/content/compact_about_config.css made available under Mozilla Public License v. 2.0 +See the above repository for updates as well as full license text. */ + +/* Makes about:config list more compact */ + +@-moz-document url("about:config"){ + .button-delete, + .button-edit, + .button-reset, + .button-save, + .button-toggle{ + margin-block: 1px !important; + padding-block: 11px 0 !important; + padding-inline: 0 !important; + min-height: 22px !important; + width: 22px !important; + outline-offset: 0 !important; + } + .cell-edit{ width: 28px !important; } + form > input, + tr:not(.add) > th, + tr:not(.add) > .cell-value{ padding-block: 0 !important; } + tr:not(:hover) .semi-transparent:not(.primary,.button-add){ background-color: transparent !important; } +} diff --git a/share/home/firefox/usercss/context-menu.css b/share/home/firefox/usercss/context-menu.css new file mode 100644 index 0000000..0bf5749 --- /dev/null +++ b/share/home/firefox/usercss/context-menu.css @@ -0,0 +1,12 @@ +/*** Remove items from image context menu ***/ +#context-sendimage, /* Email image */ +#context-inspect-a11y, +#context-savelinktopocket, +#context-pocket, +#context-savepage, +#context-print-selection, /* Print selected text */ +#context-selectall, +#context-sep-selectall /* Seperator bar */ +{ + display: none !important; +} diff --git a/share/home/firefox/usercss/tab-separator-lines.css b/share/home/firefox/usercss/tab-separator-lines.css new file mode 100644 index 0000000..2f77db4 --- /dev/null +++ b/share/home/firefox/usercss/tab-separator-lines.css @@ -0,0 +1,23 @@ +/* Source file https://github.com/MrOtherGuy/firefox-csshacks/tree/master/chrome/tab_separator_lines.css made available under Mozilla Public License v. 2.0 +See the above repository for updates as well as full license text. */ + +/* Bring back tab separator lines that were removed in Proton */ + +.tabbrowser-tab{ + border-inline-start: 1px solid transparent !important; + border-image: 0 1 linear-gradient( + transparent 20%, + color-mix(in srgb, currentColor 20%, transparent) 20%, + color-mix(in srgb, currentColor 20%, transparent) 80%, + transparent 80% + ) !important; +} + +.tabbrowser-tab:hover, +#tabbrowser-tabs:not([movingtab]) .tabbrowser-tab:hover + .tabbrowser-tab:not([first-visible-unpinned-tab]), +.tabbrowser-tab:first-child, +.tabbrowser-tab[selected], +.tabbrowser-tab[multiselected], +#tabbrowser-arrowscrollbox[overflowing] > .tabbrowser-tab[first-visible-unpinned-tab], +#tabbrowser-tabs:not([movingtab]) .tabbrowser-tab[multiselected] + .tabbrowser-tab, +#tabbrowser-tabs:not([movingtab]) .tabbrowser-tab[selected] + .tabbrowser-tab { border-image: none !important; }
\ No newline at end of file diff --git a/share/home/firefox/usercss/unified-extensions-view.css b/share/home/firefox/usercss/unified-extensions-view.css new file mode 100644 index 0000000..876a7d0 --- /dev/null +++ b/share/home/firefox/usercss/unified-extensions-view.css @@ -0,0 +1,46 @@ +/*** Clean and tight extensions menu ***/ +#unified-extensions-view { + --uei-icon-size: 20px; +} + +#unified-extensions-view .panel-header, +#unified-extensions-view .panel-header + toolbarseparator, +#unified-extensions-view .panel-subview-body + toolbarseparator, +#unified-extensions-view #unified-extensions-manage-extensions { + display:none !important; +} + +#unified-extensions-view .unified-extensions-item-menu-button.subviewbutton { + visibility: hidden !important; + transition: 300ms !important; + -moz-margin-end: -3.6em !important; +} + +#unified-extensions-view .panel-subview-body { + padding-top: 8px !important; + padding-bottom: 8px !important; +} + +#unified-extensions-view:hover +.unified-extensions-item-menu-button.subviewbutton { + visibility: visible !important; + transition: 300ms !important; + -moz-margin-end: initial !important; +} + +#unified-extensions-view .unified-extensions-item .unified-extensions-item-icon, +#unified-extensions-view .unified-extensions-item .toolbarbutton-badge-stack { + margin-inline-end: 2px !important; +} + +#unified-extensions-view .unified-extensions-item-name, +#unified-extensions-view .unified-extensions-item-message { + padding-inline-start: 0.5em !important; + width: 21em !important; +} + +#unified-extensions-view .unified-extensions-item-action-button.subviewbutton { + padding-top: 2px !important; + padding-bottom: 2px !important; +} + |
