feat(firefox): update and clean up firefox-gx
All checks were successful
Discord / discord commits (push) Has been skipped

This commit is contained in:
matt1432 2024-06-11 11:13:40 -04:00
parent bde58a622d
commit 31c3cd5f7d
7 changed files with 152 additions and 173 deletions

View file

@ -190,17 +190,17 @@
"firefox-gx-src": {
"flake": false,
"locked": {
"lastModified": 1712858061,
"narHash": "sha256-O0ggIMU3FmrkYoTLgHUPmzMr9n1B1UdppHYAS/S2Anc=",
"lastModified": 1717510595,
"narHash": "sha256-QWae4pNWUsoNUvz6MntUtBG242aer3n+JrSk2cw/NOA=",
"owner": "Godiesc",
"repo": "firefox-gx",
"rev": "1f6239d8d2ba1226b3736640e65dbbca442472bb",
"rev": "dde9941d4bf78b94d76bf06cccb2d1dce5372c56",
"type": "github"
},
"original": {
"owner": "Godiesc",
"ref": "v.9.1",
"repo": "firefox-gx",
"rev": "dde9941d4bf78b94d76bf06cccb2d1dce5372c56",
"type": "github"
}
},

View file

@ -64,8 +64,8 @@
firefox-gx-src = {
flake = false;
owner = "Godiesc";
ref = "v.9.1";
repo = "firefox-gx";
rev = "dde9941d4bf78b94d76bf06cccb2d1dce5372c56";
type = "github";
};
flakegen.url = "github:jorsn/flakegen";

139
home/firefox/custom-css.nix Normal file
View file

@ -0,0 +1,139 @@
hostName:
# css
''
/* Hide unused menu rows */
.browser-toolbar>* #alltabs-button,
#appMenu-fxa-status2,
#appMenu-fxa-separator {
display: none !important;
}
:root * {
--margin-left-icons-personal: 3px !important;
--tab-height-personal: 40px !important;
--uc-tab-corner-height: 41px !important;
--uc-vertical-toolbar-width: 46px !important;
}
/* Fix url font-size */
#urlbar-input {
font-size: large !important;
}
/* Fix left side of tabs going past what it should */
scrollbox {
margin-left: 5px;
}
/* https://github.com/Godiesc/firefox-gx/blob/main/Tricks/README.md */
/* Extensions button into the "left-sidebar" - Immovable */
:root:not([chromehidden~="toolbar"],
[sizemode="fullscreen"]) #PersonalToolbar {
--padding-top-left-sidebar: 110px !important; /* 182px to one-line config */
}
:root:not([chromehidden~="toolbar"],
[sizemode="fullscreen"]) #unified-extensions-button {
--toolbarbutton-hover-background: transparent !important;
--toolbarbutton-active-background: transparent !important;
position: fixed;
display: flex;
top: 42px !important;
left: 1px !important;
z-index: 2 !important;
fill: var(--general-color) !important;
width: calc(var(--uc-vertical-toolbar-width) - 4px) !important;
}
:root:not([chromehidden~="toolbar"],
:root:not([chromehidden~="toolbar"],
[sizemode="fullscreen"]) #unified-extensions-button:hover,
[sizemode="fullscreen"]) #unified-extensions-button[open] {
transform: scale(1.24) !important;
transition: ease-in-out !important;
}
:root:not([chromehidden~="toolbar"],
[sizemode="fullscreen"]) #unified-extensions-button:active {
transform: scale(1.12) !important;
transition-duration: 0ms !important;
}
/* Fix extension dialog going off screen */
#appMenu-addon-installed-notification,
#notification-popup {
margin-top: -1px !important;
margin-inline: -505px !important;
}
#customizationui-widget-panel {
margin-top: -1px !important;
}
#PersonalToolbar .toolbarbutton-1 {
margin-block: 0px !important;
}
#PersonalToolbar #PlacesToolbarItems>.bookmark-item {
margin-block: 6px !important;
}
/* -------------------------------------------------------------- */
/* Fix menu */
:root:not([chromehidden~="toolbar"],
[sizemode="fullscreen"]) #PanelUI-menu-button,
:root[sizemode="maximized"] #appMenu-popup,
:root[sizemode="maximized"] #appMenu-popup {
--tab-height-personal: unset !important;
}
:root:not([chromehidden~="toolbar"])[sizemode="maximized"] #appMenu-popup>panelmultiview>box>box>panelview {
padding-top: unset !important;
}
/* Hamburger menu width */
:root:not([chromehidden~="toolbar"],
:root:not([chromehidden~="toolbar"]) #PanelUI-menu-button .toolbarbutton-badge-stack,
[sizemode="fullscreen"]):is([sizemode="maximized"]) #PanelUI-menu-button[open]>stack {
min-width: 46px !important;
}
toolbar .toolbarbutton-1>.toolbarbutton-badge-stack {
padding: 10px !important;
}
:root:not([chromehidden~="toolbar"]) #PanelUI-menu-button[open]>.toolbarbutton-badge-stack {
width: unset !important;
border-top-left-radius: ${
if hostName == "wim"
then "18"
else "0"
}px !important;
}
:root:not([chromehidden~="toolbar"]) #PanelUI-menu-button>stack {
display: unset;
align-items: unset !important;
}
/* Remove text and places panel correctly */
:root:not([chromehidden~="toolbar"]) #PanelUI-menu-button>stack::after {
width: unset !important;
content: unset;
color: unset !important;
text-shadow: unset !important;
}
:root:not([chromehidden~="toolbar"])[sizemode="maximized"] #appMenu-popup {
appearance: unset !important;
margin-top: -1px !important;
clip-path: unset;
--arrowpanel-menuitem-padding: unset !important;
}
:root:is([sizemode="maximized"]):not([tabsintitlebar],
[chromehidden~="toolbar"]) #appMenu-popup {
margin-top: unset !important;
}
.subviewbutton {
min-height: 40px !important;
}
''

View file

@ -1,162 +0,0 @@
.browser-toolbar > * #alltabs-button,
#appMenu-fxa-status2,
#appMenu-fxa-separator {
display: none !important;
}
:root * {
--margin-left-icons-personal: 3px !important;
--tab-height-personal: 40px !important;
--uc-tab-corner-height: 41px !important;
--uc-vertical-toolbar-width: 46px !important;
}
/* Fix url font-size */
#urlbar-input {
font-size: large !important;
}
/* Fix left side of tabs going past what it should */
scrollbox {
margin-left: 5px;
}
/* https://github.com/Godiesc/firefox-gx/blob/main/Tricks/README.md */
/* Extensions button into the "left-sidebar" - Immovable */
:root:not([chromehidden~="toolbar"],[sizemode="fullscreen"]) #PersonalToolbar {
--padding-top-left-sidebar: 110px !important; /* 182px to one-line config */
}
:root:not([chromehidden~="toolbar"], [sizemode="fullscreen"]) #unified-extensions-button {
--toolbarbutton-hover-background: transparent !important;
--toolbarbutton-active-background: transparent !important;
position: fixed;
display: flex;
top: 42px !important;
left: 2px !important;
z-index: 2 !important;
fill: var(--general-color) !important;
width: calc(var(--uc-vertical-toolbar-width) - 4px) !important;
}
:root:not([chromehidden~="toolbar"], [sizemode="fullscreen"]) #unified-extensions-button:hover,
:root:not([chromehidden~="toolbar"], [sizemode="fullscreen"]) #unified-extensions-button[open] {
transform: scale(1.12) !important;
transition: ease-in-out !important;
}
:root:not([chromehidden~="toolbar"], [sizemode="fullscreen"]) #unified-extensions-button:active {
transform: scale(1.0) !important;
transition-duration: 0ms !important;
}
#appMenu-addon-installed-notification,
#notification-popup {
margin-top: -1px !important;
margin-inline: -505px !important;
}
#customizationui-widget-panel {
margin-top: -1px !important;
margin-inline: -200px !important;
}
#PersonalToolbar .toolbarbutton-1 {
margin-block: 0px !important;
}
#PersonalToolbar #PlacesToolbarItems > .bookmark-item {
margin-block: 6px !important;
}
/* -------------------------------------------------------------- */
/* Fix menu */
:root:not([chromehidden~="toolbar"], [sizemode="fullscreen"]) #PanelUI-menu-button, :root[sizemode="maximized"] #appMenu-popup,
:root[sizemode="maximized"] #appMenu-popup {
--tab-height-personal: unset !important;
}
:root:not([chromehidden~="toolbar"])[sizemode="maximized"] #appMenu-popup > panelmultiview > box > box > panelview {
padding-top: unset !important;
}
/* Hamburger menu width */
:root:not([chromehidden~="toolbar"], [sizemode="fullscreen"]):is([sizemode="maximized"]) #PanelUI-menu-button[open] > stack,
:root:not([chromehidden~="toolbar"]) #PanelUI-menu-button .toolbarbutton-badge-stack {
min-width: 46px !important;
}
toolbar .toolbarbutton-1 > .toolbarbutton-badge-stack {
padding: 10px !important;
}
:root:not([chromehidden~="toolbar"]) #PanelUI-menu-button[open] > .toolbarbutton-badge-stack {
width: unset !important;
}
:root[sizemode="maximized"]:not([chromehidden~="toolbar"]) #appMenu-popup panelview {
width: unset !important;
}
:root:not([chromehidden~="toolbar"]) #PanelUI-menu-button > stack{
display: unset;
align-items: unset !important;
}
:root:not([chromehidden~="toolbar"]) #PanelUI-menu-button>stack::after {
width: unset !important;
content: unset;
color: unset !important;
padding-inline-start: unset !important;
padding-block: unset !important;
text-shadow: unset !important;
}
:root:not([chromehidden~="toolbar"])[sizemode="maximized"] #appMenu-popup {
appearance: unset !important;
margin-top: -1px !important;
clip-path: unset;
--arrowpanel-menuitem-padding: unset !important;
}
:root:is([sizemode="maximized"]):not([tabsintitlebar], [chromehidden~="toolbar"]) #appMenu-popup {
margin-top: unset !important;
}
.subviewbutton:is(#appMenu-popup toolbarbutton):not(.subviewbutton-back) {
padding-inline-start: unset !important;
}
.subviewbutton:not(.subviewbutton-iconic, .toolbarbutton-text, [checked="true"])>.toolbarbutton-icon, .syncNowBtn {
width: unset;
height: unset;
margin-inline-end: unset !important;
}
#appMenu-zoom-controls{
padding-inline-start: unset !important;
}
#appMenu-fxa-status2:not([fxastatus])>#appMenu-fxa-label2 {
margin-inline-end: unset !important;
}
:root:not([chromehidden~="toolbar"])[sizemode="maximized"] #appMenu-fxa-status2 {
padding-top: unset !important;
border-image: unset !important;
border-top: unset !important;
}
:root:is([sizemode="normal"], [sizemode="fullscreen"]) #appMenu-fxa-label2 {
margin-inline-start: unset !important;
}
#appMenu-fxa-status2:not([fxastatus="signedin"]) {
margin-inline-end: unset !important;
margin-inline-start: unset !important;
}
#appMenu-fxa-status2:not([fxastatus="signedin"]):hover toolbarbutton {
background-color: unset !important;
}
:root:not([chromehidden~="toolbar"])[sizemode="maximized"] #appMenu-popup {
--arrowpanel-menuitem-padding: unset !important;
}

View file

@ -1,8 +1,11 @@
{
config,
pkgs,
firefox-gx-src,
...
}: let
inherit (config.vars) hostName;
firefox-addons = pkgs.recurseIntoAttrs (pkgs.callPackage ./addons {});
firefox-gx = pkgs.callPackage ./firefox-gx {
@ -24,7 +27,7 @@ in {
userChrome = ''
@import url("file://${firefox-gx}/chrome/userChrome.css");
@import url("file://${./custom.css}");
${import ./custom-css.nix hostName}
'';
settings = {
@ -46,6 +49,7 @@ in {
"browser.tabs.delayHidingAudioPlayingIconMS" = 0;
"layout.css.backdrop-filter.enabled" = true;
"browser.newtabpage.activity-stream.improvesearch.handoffToAwesomebar" = false;
"browser.newtabpage.activity-stream.newtabWallpapers.enabled" = true;
/*
To active container tabs without any extension

View file

@ -12,10 +12,8 @@ stdenvNoCC.mkDerivation {
installPhase = ''
# Personal changes
sed -i 's/var(--fuchsia))/var(--purple))/' ./chrome/components/ogx_root-personal.css
# Fix new tab background for nix
substituteInPlace ./chrome/components/ogx_root-personal.css \
--replace-fail '../newtab/wallpaper-dark.png' "$out/chrome/newtab/private-dark.png"
sed -i 's#../newtab/wallpaper-dark1.png#../newtab/wallpaper-dark2.png#' ./chrome/components/ogx_root-personal.css
#
mkdir -p $out
cp -r ./* $out

View file

@ -256,7 +256,7 @@ let
{
owner = "Godiesc";
repo = "firefox-gx";
ref = "v.9.1";
rev = "dde9941d4bf78b94d76bf06cccb2d1dce5372c56";
}
{
name = "git-theme-src";