summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configuration.nix4
-rw-r--r--flake.lock166
-rw-r--r--flake.nix23
-rw-r--r--home-config/firefox/uiCustomization.json67
-rw-r--r--home-config/firefox/userChrome.css73
-rw-r--r--home.nix41
m---------modules/home-manager/arkenfox0
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;
diff --git a/flake.lock b/flake.lock
index a648657..a330b7d 100644
--- a/flake.lock
+++ b/flake.lock
@@ -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"
}
}
},
diff --git a/flake.nix b/flake.nix
index 053354f..21e4a74 100644
--- a/flake.nix
+++ b/flake.nix
@@ -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
+}
diff --git a/home.nix b/home.nix
index f2d4897..fa03b1e 100644
--- a/home.nix
+++ b/home.nix
@@ -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