diff --git a/home-manager/modules/firefox/config/search.nix b/home-manager/modules/firefox/config/search.nix index 1acdaa2..1a744be 100755 --- a/home-manager/modules/firefox/config/search.nix +++ b/home-manager/modules/firefox/config/search.nix @@ -1,208 +1,204 @@ {flake, ...}: let + inherit (flake.config.people) user0; inherit (flake.config.services) instances; in { - force = true; - default = "Kagi"; - engines = { - # Self-Hosted - "${instances.jellyfin.label}" = { - definedAliases = ["@jf"]; - icon = ./icons/jf.png; - urls = [{template = "https://${instances.jellyfin.subdomain}.${instances.web.domains.url0}/web/#/search.html?query={searchTerms}";}]; + programs.firefox.profiles = { + ${user0} = { + search = { + force = true; + default = "Kagi"; + engines = { + # Self-Hosted + "${instances.jellyfin.label}" = { + definedAliases = ["@jf"]; + icon = ./icons/jf.png; + urls = [{template = "https://${instances.jellyfin.subdomain}.${instances.web.domains.url0}/web/#/search.html?query={searchTerms}";}]; + }; + "${instances.peertube.label}" = { + definedAliases = ["@pt"]; + icon = ./icons/pt.png; + urls = [{template = "https://${instances.peertube.subdomain}.${instances.web.domains.url1}/search?search={searchTerms}";}]; + }; + # General + "AlternativeTo" = { + definedAliases = ["@al"]; + icon = ./icons/al.png; + urls = [{template = "https://alternativeto.net/browse/search/?q={searchTerms}";}]; + }; + "Amazon" = { + definedAliases = ["@am"]; + icon = ./icons/am.png; + urls = [{template = "https://www.amazon.ca/s?k={searchTerms}&ref=nav_bb_sb";}]; + }; + "Brave" = { + definedAliases = ["@br"]; + icon = ./icons/br.png; + urls = [{template = "https://search.brave.com/search?q={searchTerms}&source=web";}]; + }; + "Core Radio" = { + definedAliases = ["@cr"]; + icon = ./icons/cr.png; + urls = [{template = "https://coreradio.online/?do=search&subaction=search&story={searchTerms}";}]; + }; + "DNS Checker" = { + definedAliases = ["@dn"]; + icon = ./icons/dn.png; + urls = [{template = "https://dnschecker.org/#A/{searchTerms}";}]; + }; + "Door Dash" = { + definedAliases = ["@do"]; + icon = ./icons/do.png; + urls = [{template = "https://www.doordash.com/search/store/{searchTerms}";}]; + }; + "Hackage" = { + definedAliases = ["@ha"]; + icon = ./icons/ha.png; + urls = [{template = "https://hackage.haskell.org/packages/search?terms={searchTerms}";}]; + }; + "Kagi" = { + definedAliases = ["@ka"]; + icon = ./icons/ka.png; + urls = [{template = "https://kagi.com/search?q={searchTerms}";}]; + }; + "FYT Supplies" = { + definedAliases = ["@fy"]; + icon = ./icons/fy.png; + urls = [{template = "https://fytsupplies.ca/search?type=product%2Carticle%2Cpage%2Ccollection&options[prefix]=last&q={searchTerms}*";}]; + }; + "Hoogle" = { + definedAliases = ["@ho"]; + icon = ./icons/ho.png; + urls = [{template = "https://www.stackage.org/lts-22.33/hoogle?q={searchTerms}";}]; + }; + "Kijiji" = { + definedAliases = ["@ki"]; + icon = ./icons/ki.png; + urls = [{template = "https://www.kijiji.ca/b-winnipeg/{searchTerms}";}]; + }; + "Memory Express" = { + definedAliases = ["@me"]; + icon = ./icons/me.png; + urls = [{template = "https://www.memoryexpress.com/Search/Products?Search={searchTerms}";}]; + }; + "Nix Packages" = { + definedAliases = ["@np"]; + icon = ./icons/nx.png; + urls = [{template = "https://searchix.alanpearce.eu/packages/nixpkgs/search?query={searchTerms}";}]; + }; + "Nix Options" = { + definedAliases = ["@no"]; + icon = ./icons/nx.png; + urls = [{template = "https://searchix.alanpearce.eu/options/nixos/search?query={searchTerms}";}]; + }; + "Nix Home Manager" = { + definedAliases = ["@nh"]; + icon = ./icons/nx.png; + urls = [{template = "https://searchix.alanpearce.eu/options/home-manager/search?query={searchTerms}";}]; + }; + "Nix Wiki" = { + definedAliases = ["@nw"]; + icon = ./icons/nx.png; + urls = [{template = "https://nixos.wiki/index.php?search={searchTerms}";}]; + }; + "The Pirate Bay" = { + definedAliases = ["@pi"]; + icon = ./icons/pi.png; + urls = [{template = "https://thepiratebay.org/search.php?q={searchTerms}&all=on&search=Pirate+Search&page=0&orderby=";}]; + }; + "Proton DB" = { + definedAliases = ["@pd"]; + icon = ./icons/pd.png; + urls = [{template = "https://www.protondb.com/search?q={searchTerms}";}]; + }; + "Reddit" = { + definedAliases = ["@re"]; + icon = ./icons/re.png; + urls = [{template = "https://www.reddit.com/search/?q={searchTerms}";}]; + }; + "Rhyme Zone" = { + definedAliases = ["@rz"]; + icon = ./icons/rz.png; + urls = [{template = "https://www.rhymezone.com/r/rhyme.cgi?Word={searchTerms}&typeofrhyme=perfect&org1=syl&org2=l&org3=y";}]; + }; + "Sci-Hub" = { + definedAliases = ["@sc"]; + icon = ./icons/sc.png; + urls = [{template = "https://sci-hub.ee/{searchTerms}";}]; + }; + "Skip The Dishes" = { + definedAliases = ["@sk"]; + icon = ./icons/sk.png; + urls = [{template = "https://www.skipthedishes.com/winnipeg/items?search={searchTerms}";}]; + }; + "Stanford Encyclopedia of Philosophy" = { + definedAliases = ["@ph"]; + icon = ./icons/ph.png; + urls = [{template = "https://plato.stanford.edu/search/searcher.py?query={searchTerms}";}]; + }; + "Steam DB" = { + definedAliases = ["@sd"]; + icon = ./icons/sd.png; + urls = [{template = "https://steamdb.info/search/?a=all&q={searchTerms}";}]; + }; + "Urban Dictionary" = { + definedAliases = ["@ur"]; + icon = ./icons/ur.png; + urls = [{template = "https://www.urbandictionary.com/define.php?term={searchTerms}";}]; + }; + "VSTorrent" = { + definedAliases = ["@vs"]; + icon = ./icons/vs.png; + urls = [{template = "https://vstorrent.org/?s={searchTerms}";}]; + }; + "Wikipedia" = { + definedAliases = ["@wi"]; + icon = ./icons/wi.png; + urls = [{template = "https://en.wikipedia.org/wiki/{searchTerms}";}]; + }; + "XVideos" = { + definedAliases = ["@xv"]; + icon = ./icons/xv.png; + urls = [{template = "https://www.xvideos.com/?k={searchTerms}";}]; + }; + "YouTube" = { + definedAliases = ["@yo"]; + icon = ./icons/yo.png; + urls = [{template = "https://www.youtube.com/results?search_query={searchTerms}";}]; + }; + "1337x" = { + definedAliases = ["@13"]; + icon = ./icons/13.png; + urls = [{template = "https://1337x.to/search/{searchTerms}/1/";}]; + }; + "Torrent Leech" = { + definedAliases = ["@tl"]; + icon = ./icons/tl.png; + urls = [{template = "https://www.torrentleech.org/torrents/browse/index/query/{searchTerms}";}]; + }; + "X" = { + definedAliases = ["@tw"]; + icon = ./icons/tw.png; + urls = [{template = "https://x.com/search?q={searchTerms}";}]; + }; + "Amazon.ca".metaData.hidden = true; + "Bing".metaData.hidden = true; + "eBay".metaData.hidden = true; + "Wikipedia (en)".metaData.hidden = true; + }; + order = [ + "AlternativeTo" + "Hackage" + "Kagi" + "Hoogle" + "Nix Packages" + "Nix Options" + "Nix Home Manager" + "Nix Wiki" + "Reddit" + "Sci-Hub" + "Torrent Leech" + ]; + }; }; - "${instances.peertube.label}" = { - definedAliases = ["@pt"]; - icon = ./icons/pt.png; - urls = [{template = "https://${instances.peertube.subdomain}.${instances.web.domains.url1}/search?search={searchTerms}";}]; - }; - # General - "AlternativeTo" = { - definedAliases = ["@al"]; - icon = ./icons/al.png; - urls = [{template = "https://alternativeto.net/browse/search/?q={searchTerms}";}]; - }; - "Amazon" = { - definedAliases = ["@am"]; - icon = ./icons/am.png; - urls = [{template = "https://www.amazon.ca/s?k={searchTerms}&ref=nav_bb_sb";}]; - }; - "Brave" = { - definedAliases = ["@br"]; - icon = ./icons/br.png; - urls = [{template = "https://search.brave.com/search?q={searchTerms}&source=web";}]; - }; - "Core Radio" = { - definedAliases = ["@cr"]; - icon = ./icons/cr.png; - urls = [{template = "https://coreradio.online/?do=search&subaction=search&story={searchTerms}";}]; - }; - "DNS Checker" = { - definedAliases = ["@dn"]; - icon = ./icons/dn.png; - urls = [{template = "https://dnschecker.org/#A/{searchTerms}";}]; - }; - "Door Dash" = { - definedAliases = ["@do"]; - icon = ./icons/do.png; - urls = [{template = "https://www.doordash.com/search/store/{searchTerms}";}]; - }; - "Hackage" = { - definedAliases = ["@ha"]; - icon = ./icons/ha.png; - urls = [{template = "https://hackage.haskell.org/packages/search?terms={searchTerms}";}]; - }; - "Kagi" = { - definedAliases = ["@ka"]; - icon = ./icons/ka.png; - urls = [{template = "https://kagi.com/search?q={searchTerms}";}]; - }; - "FYT Supplies" = { - definedAliases = ["@fy"]; - icon = ./icons/fy.png; - urls = [{template = "https://fytsupplies.ca/search?type=product%2Carticle%2Cpage%2Ccollection&options[prefix]=last&q={searchTerms}*";}]; - }; - "Hoogle" = { - definedAliases = ["@ho"]; - icon = ./icons/ho.png; - urls = [{template = "https://www.stackage.org/lts-22.33/hoogle?q={searchTerms}";}]; - }; - "Kijiji" = { - definedAliases = ["@ki"]; - icon = ./icons/ki.png; - urls = [{template = "https://www.kijiji.ca/b-winnipeg/{searchTerms}";}]; - }; - "Memory Express" = { - definedAliases = ["@me"]; - icon = ./icons/me.png; - urls = [{template = "https://www.memoryexpress.com/Search/Products?Search={searchTerms}";}]; - }; - "Netflix" = { - definedAliases = ["@ne"]; - icon = ./icons/ne.png; - urls = [{template = "https://www.netflix.com/search?q={searchTerms}";}]; - }; - "Nix Packages" = { - definedAliases = ["@np"]; - icon = ./icons/nx.png; - urls = [{template = "https://searchix.alanpearce.eu/packages/nixpkgs/search?query={searchTerms}";}]; - }; - "Nix Options" = { - definedAliases = ["@no"]; - icon = ./icons/nx.png; - urls = [{template = "https://searchix.alanpearce.eu/options/nixos/search?query={searchTerms}";}]; - }; - "Nix Home Manager" = { - definedAliases = ["@nh"]; - icon = ./icons/nx.png; - urls = [{template = "https://searchix.alanpearce.eu/options/home-manager/search?query={searchTerms}";}]; - }; - "Nix Wiki" = { - definedAliases = ["@nw"]; - icon = ./icons/nx.png; - urls = [{template = "https://nixos.wiki/index.php?search={searchTerms}";}]; - }; - "The Pirate Bay" = { - definedAliases = ["@pi"]; - icon = ./icons/pi.png; - urls = [{template = "https://thepiratebay.org/search.php?q={searchTerms}&all=on&search=Pirate+Search&page=0&orderby=";}]; - }; - "Proton DB" = { - definedAliases = ["@pd"]; - icon = ./icons/pd.png; - urls = [{template = "https://www.protondb.com/search?q={searchTerms}";}]; - }; - "Reddit" = { - definedAliases = ["@re"]; - icon = ./icons/re.png; - urls = [{template = "https://www.reddit.com/search/?q={searchTerms}";}]; - }; - "Rhyme Zone" = { - definedAliases = ["@rz"]; - icon = ./icons/rz.png; - urls = [{template = "https://www.rhymezone.com/r/rhyme.cgi?Word={searchTerms}&typeofrhyme=perfect&org1=syl&org2=l&org3=y";}]; - }; - "Sci-Hub" = { - definedAliases = ["@sc"]; - icon = ./icons/sc.png; - urls = [{template = "https://sci-hub.ee/{searchTerms}";}]; - }; - "Skip The Dishes" = { - definedAliases = ["@sk"]; - icon = ./icons/sk.png; - urls = [{template = "https://www.skipthedishes.com/winnipeg/items?search={searchTerms}";}]; - }; - "Stanford Encyclopedia of Philosophy" = { - definedAliases = ["@ph"]; - icon = ./icons/ph.png; - urls = [{template = "https://plato.stanford.edu/search/searcher.py?query={searchTerms}";}]; - }; - "Steam DB" = { - definedAliases = ["@sd"]; - icon = ./icons/sd.png; - urls = [{template = "https://steamdb.info/search/?a=all&q={searchTerms}";}]; - }; - "Urban Dictionary" = { - definedAliases = ["@ur"]; - icon = ./icons/ur.png; - urls = [{template = "https://www.urbandictionary.com/define.php?term={searchTerms}";}]; - }; - "VSTorrent" = { - definedAliases = ["@vs"]; - icon = ./icons/vs.png; - urls = [{template = "https://vstorrent.org/?s={searchTerms}";}]; - }; - "Wikipedia" = { - definedAliases = ["@wi"]; - icon = ./icons/wi.png; - urls = [{template = "https://en.wikipedia.org/wiki/{searchTerms}";}]; - }; - "XVideos" = { - definedAliases = ["@xv"]; - icon = ./icons/xv.png; - urls = [{template = "https://www.xvideos.com/?k={searchTerms}";}]; - }; - "YouTube" = { - definedAliases = ["@yo"]; - icon = ./icons/yo.png; - urls = [{template = "https://www.youtube.com/results?search_query={searchTerms}";}]; - }; - "1337x" = { - definedAliases = ["@13"]; - icon = ./icons/13.png; - urls = [{template = "https://1337x.to/search/{searchTerms}/1/";}]; - }; - "Torrent Leech" = { - definedAliases = ["@tl"]; - icon = ./icons/tl.png; - urls = [{template = "https://www.torrentleech.org/torrents/browse/index/query/{searchTerms}";}]; - }; - "X" = { - definedAliases = ["@tw"]; - icon = ./icons/tw.png; - urls = [{template = "https://x.com/search?q={searchTerms}";}]; - }; - "Amazon.ca".metaData.hidden = true; - "Bing".metaData.hidden = true; - "eBay".metaData.hidden = true; - "Wikipedia (en)".metaData.hidden = true; }; - order = [ - "AlternativeTo" - "Amazon" - "Hackage" - "FYT Supplies" - "Nix Packages" - "The Pirate Bay" - "Reddit" - "Urban Dictionary" - "VSTorrent" - "Wikipedia" - "XVideos" - "YouTube" - "1337x" - "Nix Packages" - "Nix Options" - "Brave" - "Google" - ]; } diff --git a/home-manager/modules/firefox/default.nix b/home-manager/modules/firefox/default.nix index 298f7b1..c75f30d 100755 --- a/home-manager/modules/firefox/default.nix +++ b/home-manager/modules/firefox/default.nix @@ -8,6 +8,7 @@ in { imports = [ ./config/bookmarks.nix + ./config/search.nix ]; programs.firefox = { enable = true; @@ -15,7 +16,6 @@ in { profiles = { ${user0} = { isDefault = true; - search = import ./config/search.nix; settings = import ./config/settings.nix; extensions = import ./config/extensions.nix {inherit nur;}; userChrome = builtins.readFile ./config/userChrome.css;