summaryrefslogtreecommitdiff
path: root/modules/home/firefox.nix
diff options
context:
space:
mode:
authorTim Keller <tjk@tjkeller.xyz>2024-10-02 22:07:10 -0500
committerTim Keller <tjk@tjkeller.xyz>2024-10-02 22:07:10 -0500
commit4730b215fdc4095800fedfdf690c12fec994bb6b (patch)
tree3c746ece0089625a8093d4ae6bf1149ea903b7dc /modules/home/firefox.nix
parent34b0bb8df42194a0ea433592e3cac27546f0af4e (diff)
downloadnixos-4730b215fdc4095800fedfdf690c12fec994bb6b.tar.xz
nixos-4730b215fdc4095800fedfdf690c12fec994bb6b.zip
more reorganizing and modularizing
Diffstat (limited to 'modules/home/firefox.nix')
-rw-r--r--modules/home/firefox.nix63
1 files changed, 63 insertions, 0 deletions
diff --git a/modules/home/firefox.nix b/modules/home/firefox.nix
new file mode 100644
index 0000000..3ae1278
--- /dev/null
+++ b/modules/home/firefox.nix
@@ -0,0 +1,63 @@
+{
+ programs.firefox = {
+ # TODO see if there is way to login to moz account in profile
+ enable = true;
+ arkenfox = {
+ enable = true;
+ };
+ profiles = let
+ search = {
+ engines = {
+ "Timmy Search" = {
+ urls = [{ template = "https://search.tjkeller.xyz/search?q={searchTerms}"; }]; # Don't know how to do w/ POST but I prefer GET anyways
+ iconURI = "https://search.tjkeller.xyz/static/themes/simple/img/favicon.svg"; # TODO doesn't seem to work
+ };
+ };
+ default = "Timmy Search";
+ privateDefault = "Timmy Search";
+ };
+ userChrome = builtins.readFile ./resources/firefox/userChrome.css;
+ arkenfox = {
+ enable = true;
+ enableAllSections = true;
+ "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; # arkenfox does
+ "app.normandy.first_run" = false;
+ "browser.uiCustomization.state" = builtins.readFile ./resources/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
+ };
+ in {
+ Personal = {
+ id = 0;
+ isDefault = true;
+ inherit search;
+ inherit userChrome;
+ inherit arkenfox;
+ inherit settings;
+ };
+ Work = {
+ id = 1;
+ inherit search;
+ };
+ Test = {
+ id = 2;
+ inherit search;
+ inherit arkenfox;
+ inherit userChrome;
+ inherit settings;
+ };
+ };
+ };
+}