diff options
-rw-r--r-- | configuration.nix | 4 | ||||
-rw-r--r-- | flake.lock | 166 | ||||
-rw-r--r-- | flake.nix | 23 | ||||
-rw-r--r-- | home-config/firefox/uiCustomization.json | 67 | ||||
-rw-r--r-- | home-config/firefox/userChrome.css | 73 | ||||
-rw-r--r-- | home.nix | 41 | ||||
m--------- | modules/home-manager/arkenfox | 0 |
7 files changed, 258 insertions, 116 deletions
diff --git a/configuration.nix b/configuration.nix index c98d0b6..02cd660 100644 --- a/configuration.nix +++ b/configuration.nix @@ -119,6 +119,7 @@ #hugo #python-pip #wireguard-tools + python3 ]; }; @@ -197,9 +198,10 @@ vim = "${pkgs.neovim}/bin/nvim"; }; + # Some programs need SUID wrappers, can be configured further or are # started in user sessions. - # programs.mtr.enable = true; + programs.mtr.enable = true; # programs.gnupg.agent = { # enable = true; # enableSSHSupport = true; @@ -1,5 +1,100 @@ { "nodes": { + "arkenfox": { + "inputs": { + "flake-compat": "flake-compat", + "flake-utils": "flake-utils", + "nixpkgs": [ + "nixpkgs" + ], + "pre-commit": "pre-commit" + }, + "locked": { + "lastModified": 1725263787, + "narHash": "sha256-OSNjus8VSkLCSikN6Qeq+II1bwqTRJEwl6NJvFoQHoE=", + "owner": "dwarfmaster", + "repo": "arkenfox-nixos", + "rev": "72addd96455cce49c0c8524c53aecd02cf20adec", + "type": "github" + }, + "original": { + "owner": "dwarfmaster", + "repo": "arkenfox-nixos", + "type": "github" + } + }, + "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_2": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "gitignore": { + "inputs": { + "nixpkgs": [ + "arkenfox", + "pre-commit", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -23,6 +118,38 @@ }, "nixpkgs": { "locked": { + "lastModified": 1719082008, + "narHash": "sha256-jHJSUH619zBQ6WdC21fFAlDxHErKVDJ5fpN0Hgx4sjs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "9693852a2070b398ee123a329e68f0dab5526681", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-stable": { + "locked": { + "lastModified": 1720386169, + "narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "194846768975b7ad2c4988bdb82572c00222c0d7", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-24.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { "lastModified": 1727540905, "narHash": "sha256-40J9tW7Y794J7Uw4GwcAKlMxlX2xISBl6IBigo83ih8=", "owner": "nixos", @@ -37,10 +164,47 @@ "type": "github" } }, + "pre-commit": { + "inputs": { + "flake-compat": "flake-compat_2", + "gitignore": "gitignore", + "nixpkgs": "nixpkgs", + "nixpkgs-stable": "nixpkgs-stable" + }, + "locked": { + "lastModified": 1724857454, + "narHash": "sha256-Qyl9Q4QMTLZnnBb/8OuQ9LSkzWjBU1T5l5zIzTxkkhk=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "4509ca64f1084e73bc7a721b20c669a8d4c5ebe6", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, "root": { "inputs": { + "arkenfox": "arkenfox", "home-manager": "home-manager", - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs_2" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" } } }, @@ -8,21 +8,34 @@ url = "github:nix-community/home-manager/release-24.05"; inputs.nixpkgs.follows = "nixpkgs"; }; + + arkenfox = { + url = "github:dwarfmaster/arkenfox-nixos"; + inputs.nixpkgs.follows = "nixpkgs"; + #inputs.home-manager.follows = "home-manager"; + }; }; - outputs = { nixpkgs, home-manager, ... }: + outputs = { nixpkgs, home-manager, arkenfox, ... }@inputs : # HOSTNAME NIXOS let system = "x86_64-linux"; + pkgs = nixpkgs.legacyPackages.${system}; in { - nixosConfigurations.nixos = nixpkgs.lib.nixosSystem { + nixosConfigurations.nixos = nixpkgs.lib.nixosSystem { inherit system; - modules = [ ./configuration.nix ]; + specialArgs = { inherit inputs; }; + modules = [ + ./configuration.nix + ]; }; homeConfigurations.timmy = home-manager.lib.homeManagerConfiguration { - pkgs = nixpkgs.legacyPackages.${system}; - modules = [ ./home.nix ]; + inherit pkgs; + modules = [ + ./home.nix + inputs.arkenfox.hmModules.arkenfox + ]; }; }; } diff --git a/home-config/firefox/uiCustomization.json b/home-config/firefox/uiCustomization.json index 02fa6de..339b716 100644 --- a/home-config/firefox/uiCustomization.json +++ b/home-config/firefox/uiCustomization.json @@ -1,66 +1 @@ -{ - "placements": { - "widget-overflow-fixed-list": [], - "unified-extensions-area": [ - "ublock0_raymondhill_net-browser-action", - "sponsorblocker_ajay_app-browser-action", - "_e6e36c9a-8323-446c-b720-a176017e38ff_-browser-action", - "dearrow_ajay_app-browser-action", - "_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action", - "idcac-pub_guus_ninja-browser-action", - "addon_darkreader_org-browser-action", - "_74145f27-f039-47ce-a470-a662b129930a_-browser-action", - "_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action", - "jid1-bofifl9vbdl2zq_jetpack-browser-action", - "addon_fastforward_team-browser-action", - "jid1-tsgsxbhncspbwq_jetpack-browser-action", - "_aecec67f-0d10-4fa7-b7c7-609a2db280cf_-browser-action" - ], - "nav-bar": [ - "back-button", - "forward-button", - "stop-reload-button", - "home-button", - "urlbar-container", - "downloads-button", - "unified-extensions-button" - ], - "toolbar-menubar": [ - "menubar-items" - ], - "TabsToolbar": [ - "tabbrowser-tabs", - "new-tab-button", - "alltabs-button" - ], - "PersonalToolbar": [ - "personal-bookmarks" - ] - }, - "seen": [ - "save-to-pocket-button", - "developer-button", - "dearrow_ajay_app-browser-action", - "_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action", - "_e6e36c9a-8323-446c-b720-a176017e38ff_-browser-action", - "sponsorblocker_ajay_app-browser-action", - "ublock0_raymondhill_net-browser-action", - "idcac-pub_guus_ninja-browser-action", - "addon_darkreader_org-browser-action", - "_74145f27-f039-47ce-a470-a662b129930a_-browser-action", - "_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action", - "jid1-bofifl9vbdl2zq_jetpack-browser-action", - "addon_fastforward_team-browser-action", - "jid1-tsgsxbhncspbwq_jetpack-browser-action", - "_aecec67f-0d10-4fa7-b7c7-609a2db280cf_-browser-action" - ], - "dirtyAreaCache": [ - "nav-bar", - "PersonalToolbar", - "unified-extensions-area", - "toolbar-menubar", - "TabsToolbar" - ], - "currentVersion": 20, - "newElementCount": 5 -} +{"placements":{"widget-overflow-fixed-list":[],"unified-extensions-area":["ublock0_raymondhill_net-browser-action","sponsorblocker_ajay_app-browser-action","_e6e36c9a-8323-446c-b720-a176017e38ff_-browser-action","dearrow_ajay_app-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","idcac-pub_guus_ninja-browser-action","addon_darkreader_org-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","jid1-bofifl9vbdl2zq_jetpack-browser-action","addon_fastforward_team-browser-action","jid1-tsgsxbhncspbwq_jetpack-browser-action","_aecec67f-0d10-4fa7-b7c7-609a2db280cf_-browser-action"],"nav-bar":["back-button","forward-button","stop-reload-button","home-button","urlbar-container","downloads-button","unified-extensions-button"],"toolbar-menubar":["menubar-items"],"TabsToolbar":["tabbrowser-tabs","new-tab-button","alltabs-button"],"PersonalToolbar":["personal-bookmarks"]},"seen":["save-to-pocket-button","developer-button","dearrow_ajay_app-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","_e6e36c9a-8323-446c-b720-a176017e38ff_-browser-action","sponsorblocker_ajay_app-browser-action","ublock0_raymondhill_net-browser-action","idcac-pub_guus_ninja-browser-action","addon_darkreader_org-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","jid1-bofifl9vbdl2zq_jetpack-browser-action","addon_fastforward_team-browser-action","jid1-tsgsxbhncspbwq_jetpack-browser-action","_aecec67f-0d10-4fa7-b7c7-609a2db280cf_-browser-action"],"dirtyAreaCache":["nav-bar","PersonalToolbar","unified-extensions-area","toolbar-menubar","TabsToolbar"],"currentVersion":20,"newElementCount":5} diff --git a/home-config/firefox/userChrome.css b/home-config/firefox/userChrome.css index b6c9502..af302c5 100644 --- a/home-config/firefox/userChrome.css +++ b/home-config/firefox/userChrome.css @@ -1,22 +1,22 @@ /* TOP BAR */ -#navigator-toolbox{ +#navigator-toolbox { --uc-navigationbar-width: 40vw; } /* Remove overflow button */ #nav-bar-overflow-button { display: none; } - + /* remove alltabs button */ #alltabs-button { display: none; } /* Change background color of toolbar */ -#navigator-toolbox-background { - background: var(--toolbar-field-border-color) !important; +#navigator-toolbox-background { + background: var(--toolbar-field-border-color) !important; } /* Fix vertical spacing of tabs */ -#TabsToolbar { - margin-top: -1px; +#TabsToolbar { + margin-top: -1px; } /* Move new tab to far right */ @@ -24,24 +24,29 @@ margin-left: auto; } +/* Fix spacing around tabs by removing nav bar top border */ +#nav-bar { + border: none !important; +} + /* Media queries for width of nav bar */ -@media screen and (max-width: 1000px){ - #navigator-toolbox{ +@media screen and (max-width: 1000px) { + #navigator-toolbox { --uc-navigationbar-width: 50vw; } } -@media screen and (max-width: 800px){ - #navigator-toolbox{ +@media screen and (max-width: 800px) { + #navigator-toolbox { --uc-navigationbar-width: 60vw; } } /* Change look of tabs in smaller view */ -@media screen and (max-width: 800px){ - .tab-background { +@media screen and (max-width: 800px) { + .tab-background { margin-block: .2em !important; } - #TabsToolbar{ + #TabsToolbar { margin-left: 5px; } } @@ -49,41 +54,41 @@ /* COMBINE TOP BAR */ /* Combine top bar into single line if width >= 800px */ -@media screen and (min-width: 800px){ +@media screen and (min-width: 800px) { :root { --uc-toolbar-height: 36px; /* Half height bar */ } /* Modify these to change relative widths or default height */ - #navigator-toolbox{ + #navigator-toolbox { margin-bottom: 0px; } - + #titlebar { margin-top: 2px; } - #TabsToolbar{ + #TabsToolbar { margin-left: calc(var(--uc-navigationbar-width) + 2px); /* Resize tab bar */ margin-top: -4px; margin-bottom: 2px; } /* Tabs extend to bottom of bar */ - .tab-background { + .tab-background { margin-bottom: 0 !important; margin-top: 2px !important; /* See above navbox rule */ } /* Center tab buttons */ - #tabs-newtab-button, + #tabs-newtab-button, #alltabs-button - { - margin-top: 4px !important; + { + margin-top: 4px !important; } /* Integrate url / nav bar */ - #nav-bar{ + #nav-bar { margin-right:calc(100vw - var(--uc-navigationbar-width)); margin-top: calc(0px - var(--uc-toolbar-height)); border-radius: 0 var(--tab-border-radius) var(--tab-border-radius) 0; @@ -92,25 +97,25 @@ } /* 1px margin on touch density causes tabs to be too high */ - .tab-close-button{ - margin-top: 0 !important + .tab-close-button { + margin-top: 0 !important } /* Make opened urlbar overlay the toolbar */ - #urlbar[open]:focus-within{ - min-width: 50vw !important; + #urlbar[open]:focus-within { + min-width: 50vw !important; } - + /* Remove min and max width of urlbar */ - #urlbar-container { + #urlbar-container { width: 0 !important; } - + /* Fix customization view */ - #customization-panelWrapper .panel-arrowbox .panel-arrow{ - margin-inline-end: initial !important; + #customization-panelWrapper .panel-arrowbox .panel-arrow { + margin-inline-end: initial !important; } - + /* Shorten findbar */ findbar { width: 600px !important; @@ -178,7 +183,7 @@ findbar .findbar-container hbox { /* BOOKMARK BAR */ -@-moz-document url(chrome://browser/content/browser.xhtml){ +@-moz-document url(chrome://browser/content/browser.xhtml) { #PersonalToolbar { background: -moz-headerbar Field !important; border-top: 1px solid ThreeDShadow !important; @@ -187,4 +192,4 @@ findbar .findbar-container hbox { .bookmark-item .toolbarbutton-text { padding: 2.5px 4px; } -}
\ No newline at end of file +} @@ -32,6 +32,9 @@ firefox = { # TODO see if there is way to login to moz account in profile enable = true; + arkenfox = { + enable = true; + }; profiles = let search = { engines = { @@ -44,21 +47,34 @@ privateDefault = "Timmy Search"; }; userChrome = builtins.readFile ./home-config/firefox/userChrome.css; + arkenfox = { + enable = true; + enableAllSections = true; + "0100".enable = false; + "0100"."0102"."browser.startup.page".value = 3; # 0=blank, 1=home, 2=last visited page, 3=resume previous session + "0100"."0103"."browser.startup.homepage".enable = false; + "0100"."0104"."browser.newtabpage.enabled".enable = false; + }; settings = { - toolkit.legacyUserProfileCustomizations.stylesheets = true; - browser.compactmode.show = true; - browser.uidensity = 1; # Compact - browser.download.dir = /home/timmy/dls; # FF will create this dir if it doesn't exist - browser.aboutConfig.showWarning = false; - app.normandy.first_run = false; - browser.uiCustomization.state = builtins.readFile ./home-config/firefox/uiCustomization.json; # Toolbar etc. - #identity.fxaccounts.account.device.name = "timmy’s Firefox on nixos"; # HOSTNAME + # checkdefaultbrowser + "toolkit.legacyUserProfileCustomizations.stylesheets" = true; + "browser.compactmode.show" = true; + "browser.uidensity" = 1; # Compact + "browser.download.dir" = /home/timmy/dls; # FF will create this dir if it doesn't exist + "browser.aboutConfig.showWarning" = false; # arkenfox does + "app.normandy.first_run" = false; + "browser.uiCustomization.state" = builtins.readFile ./home-config/firefox/uiCustomization.json; # Toolbar etc. + "browser.newtabpage.activity-stream.feeds.section.topstories" = false; + "browser.newtabpage.activity-stream.feeds.topsites" = false; + "general.smoothScroll" = false; + "devtools.toolbox.host" = "window"; + #identity.fxaccounts.account.device.name = "timmy’s Firefox on nixos"; # HOSTNAME + #"extensions.webextensions.uuids" = ''{"formautofill@mozilla.org":"4414011f-06b6-4e01-b10f-997a0fcc89b1","pictureinpicture@mozilla.org":"24839249-94cf-4a8b-b324-c41db09783a6","screenshots@mozilla.org":"a81bdd73-04c1-42fa-8975-2b7b42539028","webcompat-reporter@mozilla.org":"1c0ba4e0-70db-4418-a5af-84eb2a7ad4e1","webcompat@mozilla.org":"ee04b43a-e8b1-4f84-97a3-17c5fa0c220f","default-theme@mozilla.org":"dd287fab-7187-46d2-8b89-0f76178ed2d0","addons-search-detection@mozilla.com":"224ac742-6980-4cc3-a4d0-bb1e7b9e8618","deArrow@ajay.app":"26301437-8ae7-480a-9f84-c7d246a332c2","{446900e4-71c2-419f-a6a7-df9c091e268b}":"2f0cea3f-7b0f-48ab-8dd1-43515fbcd4b9","{e6e36c9a-8323-446c-b720-a176017e38ff}":"614d46fd-2d27-45fe-bd3f-5a6bd2ef3b10","sponsorBlocker@ajay.app":"cbd0ed92-f929-4a73-89ea-604ccb97af57","uBlock0@raymondhill.net":"347c9b9e-b661-45a3-9468-0ff158a9de9b","idcac-pub@guus.ninja":"ca41385f-0f02-406a-86ae-3ee9e02d8847","addon@darkreader.org":"ce0ea7c2-d50e-4d39-a7c2-35c4f6ed0ece","{74145f27-f039-47ce-a470-a662b129930a}":"244ddd6e-365b-448b-9fa6-4f8838a11862","{762f9885-5a13-4abd-9c77-433dcd38b8fd}":"ad0bca48-2e63-4377-9124-b0bda07afb7c","keepassxc-browser@keepassxc.org":"480c9bd0-c6c6-4d97-a4da-1f70117fabf9","jid1-BoFifL9Vbdl2zQ@jetpack":"3f59e181-86e9-428d-88b0-c740d1429d17","addon@fastforward.team":"445791d1-a3d7-4b1e-b860-910ef1db8c5e","jid1-TSgSxBhncsPBWQ@jetpack":"fef86ba1-cff1-4835-ba25-6cad0f0958fd","{aecec67f-0d10-4fa7-b7c7-609a2db280cf}":"daf85f14-3e3e-4b91-af2b-03b1aa137362"}''; }; in { Personal = { id = 0; isDefault = true; - #settings = {}; inherit search; inherit userChrome; inherit settings; @@ -67,6 +83,13 @@ id = 1; inherit search; }; + Test = { + id = 2; + inherit search; + inherit arkenfox; + inherit userChrome; + inherit settings; + }; }; }; }; diff --git a/modules/home-manager/arkenfox b/modules/home-manager/arkenfox new file mode 160000 +Subproject 72addd96455cce49c0c8524c53aecd02cf20ade |