mirror of
https://github.com/Swarsel/.dotfiles.git
synced 2025-12-06 17:17:22 +01:00
feat: set firefox profiles by custom attribute set
This commit is contained in:
parent
2cf03a3243
commit
0ed2b5c0b5
4 changed files with 327 additions and 452 deletions
|
|
@ -2521,6 +2521,7 @@ This holds modules that are to be used on most hosts. These are also the most im
|
||||||
"startup"
|
"startup"
|
||||||
"wallpaper"
|
"wallpaper"
|
||||||
"filesystem"
|
"filesystem"
|
||||||
|
"firefox"
|
||||||
];
|
];
|
||||||
|
|
||||||
mkImports = names: builtins.listToAttrs (map (name: {
|
mkImports = names: builtins.listToAttrs (map (name: {
|
||||||
|
|
@ -2769,10 +2770,11 @@ These are some extra options that will be used if the machine also runs NixOS. F
|
||||||
***** darwin
|
***** darwin
|
||||||
|
|
||||||
#+begin_src nix :noweb yes :tangle modules/home/darwin.nix
|
#+begin_src nix :noweb yes :tangle modules/home/darwin.nix
|
||||||
{ lib, ... }:
|
{ lib, ... }:
|
||||||
{
|
{
|
||||||
options.swarselsystems.isDarwin = lib.mkEnableOption "darwin host";
|
options.swarselsystems.isDarwin = lib.mkEnableOption "darwin host";
|
||||||
}
|
|
||||||
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
***** System startup
|
***** System startup
|
||||||
|
|
@ -2846,6 +2848,165 @@ Another duplicated option for the filesystem.
|
||||||
}
|
}
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
***** firefox
|
||||||
|
|
||||||
|
#+begin_src nix :noweb yes :tangle modules/home/firefox.nix
|
||||||
|
{ lib, pkgs, ... }:
|
||||||
|
let
|
||||||
|
lock-false = {
|
||||||
|
Value = false;
|
||||||
|
Status = "locked";
|
||||||
|
};
|
||||||
|
lock-true = {
|
||||||
|
Value = true;
|
||||||
|
Status = "locked";
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.swarselsystems.firefox = lib.mkOption {
|
||||||
|
type = lib.types.attrs;
|
||||||
|
default = {
|
||||||
|
isDefault = false;
|
||||||
|
userChrome = builtins.readFile ../../programs/firefox/chrome/userChrome.css;
|
||||||
|
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||||
|
tridactyl
|
||||||
|
tampermonkey
|
||||||
|
sidebery
|
||||||
|
browserpass
|
||||||
|
clearurls
|
||||||
|
darkreader
|
||||||
|
enhancer-for-youtube
|
||||||
|
istilldontcareaboutcookies
|
||||||
|
translate-web-pages
|
||||||
|
ublock-origin
|
||||||
|
reddit-enhancement-suite
|
||||||
|
sponsorblock
|
||||||
|
web-archives
|
||||||
|
onepassword-password-manager
|
||||||
|
single-file
|
||||||
|
widegithub
|
||||||
|
enhanced-github
|
||||||
|
unpaywall
|
||||||
|
don-t-fuck-with-paste
|
||||||
|
plasma-integration
|
||||||
|
(buildFirefoxXpiAddon {
|
||||||
|
pname = "shortkeys";
|
||||||
|
version = "4.0.2";
|
||||||
|
addonId = "Shortkeys@Shortkeys.com";
|
||||||
|
url = "https://addons.mozilla.org/firefox/downloads/file/3673761/shortkeys-4.0.2.xpi";
|
||||||
|
sha256 = "c6fe12efdd7a871787ac4526eea79ecc1acda8a99724aa2a2a55c88a9acf467c";
|
||||||
|
meta = with lib;
|
||||||
|
{
|
||||||
|
description = "Easily customizable custom keyboard shortcuts for Firefox. To configure this addon go to Addons (ctrl+shift+a) ->Shortkeys ->Options. Report issues here (please specify that the issue is found in Firefox): https://github.com/mikecrittenden/shortkeys";
|
||||||
|
mozPermissions = [
|
||||||
|
"tabs"
|
||||||
|
"downloads"
|
||||||
|
"clipboardWrite"
|
||||||
|
"browsingData"
|
||||||
|
"storage"
|
||||||
|
"bookmarks"
|
||||||
|
"sessions"
|
||||||
|
"<all_urls>"
|
||||||
|
];
|
||||||
|
platforms = platforms.all;
|
||||||
|
};
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
settings =
|
||||||
|
{
|
||||||
|
"extensions.autoDisableScopes" = 0;
|
||||||
|
"browser.bookmarks.showMobileBookmarks" = lock-true;
|
||||||
|
"toolkit.legacyUserProfileCustomizations.stylesheets" = lock-true;
|
||||||
|
"browser.search.suggest.enabled" = lock-false;
|
||||||
|
"browser.search.suggest.enabled.private" = lock-false;
|
||||||
|
"browser.urlbar.suggest.searches" = lock-false;
|
||||||
|
"browser.urlbar.showSearchSuggestionsFirst" = lock-false;
|
||||||
|
"browser.topsites.contile.enabled" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.feeds.section.topstories" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.feeds.snippets" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.section.highlights.includePocket" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.showSponsored" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.system.showSponsored" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.showSponsoredTopSites" = lock-false;
|
||||||
|
};
|
||||||
|
|
||||||
|
search = {
|
||||||
|
default = "Kagi";
|
||||||
|
privateDefault = "Kagi";
|
||||||
|
engines = {
|
||||||
|
"Kagi" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://kagi.com/search";
|
||||||
|
params = [
|
||||||
|
{ name = "q"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
iconUpdateURL = "https://kagi.com/favicon.ico";
|
||||||
|
updateInterval = 24 * 60 * 60 * 1000; # every day
|
||||||
|
definedAliases = [ "@k" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"Nix Packages" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://search.nixos.org/packages";
|
||||||
|
params = [
|
||||||
|
{ name = "type"; value = "packages"; }
|
||||||
|
{ name = "query"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
|
definedAliases = [ "@np" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"NixOS Wiki" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://nixos.wiki/index.php?search={searchTerms}";
|
||||||
|
}];
|
||||||
|
iconUpdateURL = "https://nixos.wiki/favicon.png";
|
||||||
|
updateInterval = 24 * 60 * 60 * 1000; # every day
|
||||||
|
definedAliases = [ "@nw" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"NixOS Options" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://search.nixos.org/options";
|
||||||
|
params = [
|
||||||
|
{ name = "query"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
|
||||||
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
|
definedAliases = [ "@no" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"Home Manager Options" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://home-manager-options.extranix.com/";
|
||||||
|
params = [
|
||||||
|
{ name = "query"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
|
||||||
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
|
definedAliases = [ "@hm" "@ho" "@hmo" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"Google".metaData.alias = "@g";
|
||||||
|
};
|
||||||
|
force = true; # this is required because otherwise the search.json.mozlz4 symlink gets replaced on every firefox restart
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
|
||||||
** NixOS
|
** NixOS
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:CUSTOM_ID: h:6da812f5-358c-49cb-aff2-0a94f20d70b3
|
:CUSTOM_ID: h:6da812f5-358c-49cb-aff2-0a94f20d70b3
|
||||||
|
|
@ -9036,17 +9197,7 @@ The rest of the settings is at [[#h:fb3f3e01-7df4-4b06-9e91-aa9cac61a431][gaming
|
||||||
The rest of the settings is at [[#h:bbf2ecb6-c8ff-4462-b5d5-d45b28604ddf][work]]. Here, I am setting up the different firefox profiles that I need for the SSO sites that I need to access at work as well as a few ssh shorthands.
|
The rest of the settings is at [[#h:bbf2ecb6-c8ff-4462-b5d5-d45b28604ddf][work]]. Here, I am setting up the different firefox profiles that I need for the SSO sites that I need to access at work as well as a few ssh shorthands.
|
||||||
|
|
||||||
#+begin_src nix :tangle profiles/optional/home/work.nix :noweb yes
|
#+begin_src nix :tangle profiles/optional/home/work.nix :noweb yes
|
||||||
{ pkgs, lib, ... }:
|
{ config, pkgs, lib, ... }:
|
||||||
let
|
|
||||||
lock-false = {
|
|
||||||
Value = false;
|
|
||||||
Status = "locked";
|
|
||||||
};
|
|
||||||
lock-true = {
|
|
||||||
Value = true;
|
|
||||||
Status = "locked";
|
|
||||||
};
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
stable.teams-for-linux
|
stable.teams-for-linux
|
||||||
|
|
@ -9102,18 +9253,9 @@ The rest of the settings is at [[#h:bbf2ecb6-c8ff-4462-b5d5-d45b28604ddf][work]]
|
||||||
|
|
||||||
firefox = {
|
firefox = {
|
||||||
profiles = {
|
profiles = {
|
||||||
dc_adm = {
|
dc_adm = lib.recursiveUpdate { id = 1; } config.swarselsystems.firefox;
|
||||||
id = 1;
|
cl_adm = lib.recursiveUpdate { id = 2; } config.swarselsystems.firefox;
|
||||||
<<firefoxprofile>>
|
ws_adm = lib.recursiveUpdate { id = 3; } config.swarselsystems.firefox;
|
||||||
};
|
|
||||||
cl_adm = {
|
|
||||||
id = 2;
|
|
||||||
<<firefoxprofile>>
|
|
||||||
};
|
|
||||||
ws_adm = {
|
|
||||||
id = 3;
|
|
||||||
<<firefoxprofile>>
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ let
|
||||||
"startup"
|
"startup"
|
||||||
"wallpaper"
|
"wallpaper"
|
||||||
"filesystem"
|
"filesystem"
|
||||||
|
"firefox"
|
||||||
];
|
];
|
||||||
|
|
||||||
mkImports = names: builtins.listToAttrs (map
|
mkImports = names: builtins.listToAttrs (map
|
||||||
|
|
|
||||||
153
modules/home/firefox.nix
Normal file
153
modules/home/firefox.nix
Normal file
|
|
@ -0,0 +1,153 @@
|
||||||
|
{ lib, pkgs, ... }:
|
||||||
|
let
|
||||||
|
lock-false = {
|
||||||
|
Value = false;
|
||||||
|
Status = "locked";
|
||||||
|
};
|
||||||
|
lock-true = {
|
||||||
|
Value = true;
|
||||||
|
Status = "locked";
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.swarselsystems.firefox = lib.mkOption {
|
||||||
|
type = lib.types.attrs;
|
||||||
|
default = {
|
||||||
|
isDefault = false;
|
||||||
|
userChrome = builtins.readFile ../../programs/firefox/chrome/userChrome.css;
|
||||||
|
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||||
|
tridactyl
|
||||||
|
tampermonkey
|
||||||
|
sidebery
|
||||||
|
browserpass
|
||||||
|
clearurls
|
||||||
|
darkreader
|
||||||
|
enhancer-for-youtube
|
||||||
|
istilldontcareaboutcookies
|
||||||
|
translate-web-pages
|
||||||
|
ublock-origin
|
||||||
|
reddit-enhancement-suite
|
||||||
|
sponsorblock
|
||||||
|
web-archives
|
||||||
|
onepassword-password-manager
|
||||||
|
single-file
|
||||||
|
widegithub
|
||||||
|
enhanced-github
|
||||||
|
unpaywall
|
||||||
|
don-t-fuck-with-paste
|
||||||
|
plasma-integration
|
||||||
|
(buildFirefoxXpiAddon {
|
||||||
|
pname = "shortkeys";
|
||||||
|
version = "4.0.2";
|
||||||
|
addonId = "Shortkeys@Shortkeys.com";
|
||||||
|
url = "https://addons.mozilla.org/firefox/downloads/file/3673761/shortkeys-4.0.2.xpi";
|
||||||
|
sha256 = "c6fe12efdd7a871787ac4526eea79ecc1acda8a99724aa2a2a55c88a9acf467c";
|
||||||
|
meta = with lib;
|
||||||
|
{
|
||||||
|
description = "Easily customizable custom keyboard shortcuts for Firefox. To configure this addon go to Addons (ctrl+shift+a) ->Shortkeys ->Options. Report issues here (please specify that the issue is found in Firefox): https://github.com/mikecrittenden/shortkeys";
|
||||||
|
mozPermissions = [
|
||||||
|
"tabs"
|
||||||
|
"downloads"
|
||||||
|
"clipboardWrite"
|
||||||
|
"browsingData"
|
||||||
|
"storage"
|
||||||
|
"bookmarks"
|
||||||
|
"sessions"
|
||||||
|
"<all_urls>"
|
||||||
|
];
|
||||||
|
platforms = platforms.all;
|
||||||
|
};
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
settings =
|
||||||
|
{
|
||||||
|
"extensions.autoDisableScopes" = 0;
|
||||||
|
"browser.bookmarks.showMobileBookmarks" = lock-true;
|
||||||
|
"toolkit.legacyUserProfileCustomizations.stylesheets" = lock-true;
|
||||||
|
"browser.search.suggest.enabled" = lock-false;
|
||||||
|
"browser.search.suggest.enabled.private" = lock-false;
|
||||||
|
"browser.urlbar.suggest.searches" = lock-false;
|
||||||
|
"browser.urlbar.showSearchSuggestionsFirst" = lock-false;
|
||||||
|
"browser.topsites.contile.enabled" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.feeds.section.topstories" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.feeds.snippets" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.section.highlights.includePocket" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.showSponsored" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.system.showSponsored" = lock-false;
|
||||||
|
"browser.newtabpage.activity-stream.showSponsoredTopSites" = lock-false;
|
||||||
|
};
|
||||||
|
|
||||||
|
search = {
|
||||||
|
default = "Kagi";
|
||||||
|
privateDefault = "Kagi";
|
||||||
|
engines = {
|
||||||
|
"Kagi" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://kagi.com/search";
|
||||||
|
params = [
|
||||||
|
{ name = "q"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
iconUpdateURL = "https://kagi.com/favicon.ico";
|
||||||
|
updateInterval = 24 * 60 * 60 * 1000; # every day
|
||||||
|
definedAliases = [ "@k" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"Nix Packages" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://search.nixos.org/packages";
|
||||||
|
params = [
|
||||||
|
{ name = "type"; value = "packages"; }
|
||||||
|
{ name = "query"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
|
definedAliases = [ "@np" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"NixOS Wiki" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://nixos.wiki/index.php?search={searchTerms}";
|
||||||
|
}];
|
||||||
|
iconUpdateURL = "https://nixos.wiki/favicon.png";
|
||||||
|
updateInterval = 24 * 60 * 60 * 1000; # every day
|
||||||
|
definedAliases = [ "@nw" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"NixOS Options" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://search.nixos.org/options";
|
||||||
|
params = [
|
||||||
|
{ name = "query"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
|
||||||
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
|
definedAliases = [ "@no" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"Home Manager Options" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://home-manager-options.extranix.com/";
|
||||||
|
params = [
|
||||||
|
{ name = "query"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
|
||||||
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
|
definedAliases = [ "@hm" "@ho" "@hmo" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"Google".metaData.alias = "@g";
|
||||||
|
};
|
||||||
|
force = true; # this is required because otherwise the search.json.mozlz4 symlink gets replaced on every firefox restart
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,14 +1,4 @@
|
||||||
{ pkgs, lib, ... }:
|
{ config, pkgs, lib, ... }:
|
||||||
let
|
|
||||||
lock-false = {
|
|
||||||
Value = false;
|
|
||||||
Status = "locked";
|
|
||||||
};
|
|
||||||
lock-true = {
|
|
||||||
Value = true;
|
|
||||||
Status = "locked";
|
|
||||||
};
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
stable.teams-for-linux
|
stable.teams-for-linux
|
||||||
|
|
@ -64,420 +54,9 @@ in
|
||||||
|
|
||||||
firefox = {
|
firefox = {
|
||||||
profiles = {
|
profiles = {
|
||||||
dc_adm = {
|
dc_adm = lib.recursiveUpdate { id = 1; } config.swarselsystems.firefox;
|
||||||
id = 1;
|
cl_adm = lib.recursiveUpdate { id = 2; } config.swarselsystems.firefox;
|
||||||
|
ws_adm = lib.recursiveUpdate { id = 3; } config.swarselsystems.firefox;
|
||||||
isDefault = false;
|
|
||||||
userChrome = builtins.readFile ../../../programs/firefox/chrome/userChrome.css;
|
|
||||||
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
|
||||||
tridactyl
|
|
||||||
tampermonkey
|
|
||||||
sidebery
|
|
||||||
browserpass
|
|
||||||
clearurls
|
|
||||||
darkreader
|
|
||||||
enhancer-for-youtube
|
|
||||||
istilldontcareaboutcookies
|
|
||||||
translate-web-pages
|
|
||||||
ublock-origin
|
|
||||||
reddit-enhancement-suite
|
|
||||||
sponsorblock
|
|
||||||
web-archives
|
|
||||||
onepassword-password-manager
|
|
||||||
single-file
|
|
||||||
widegithub
|
|
||||||
enhanced-github
|
|
||||||
unpaywall
|
|
||||||
don-t-fuck-with-paste
|
|
||||||
plasma-integration
|
|
||||||
(buildFirefoxXpiAddon {
|
|
||||||
pname = "shortkeys";
|
|
||||||
version = "4.0.2";
|
|
||||||
addonId = "Shortkeys@Shortkeys.com";
|
|
||||||
url = "https://addons.mozilla.org/firefox/downloads/file/3673761/shortkeys-4.0.2.xpi";
|
|
||||||
sha256 = "c6fe12efdd7a871787ac4526eea79ecc1acda8a99724aa2a2a55c88a9acf467c";
|
|
||||||
meta = with lib;
|
|
||||||
{
|
|
||||||
description = "Easily customizable custom keyboard shortcuts for Firefox. To configure this addon go to Addons (ctrl+shift+a) ->Shortkeys ->Options. Report issues here (please specify that the issue is found in Firefox): https://github.com/mikecrittenden/shortkeys";
|
|
||||||
mozPermissions = [
|
|
||||||
"tabs"
|
|
||||||
"downloads"
|
|
||||||
"clipboardWrite"
|
|
||||||
"browsingData"
|
|
||||||
"storage"
|
|
||||||
"bookmarks"
|
|
||||||
"sessions"
|
|
||||||
"<all_urls>"
|
|
||||||
];
|
|
||||||
platforms = platforms.all;
|
|
||||||
};
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
settings =
|
|
||||||
{
|
|
||||||
"extensions.autoDisableScopes" = 0;
|
|
||||||
"browser.bookmarks.showMobileBookmarks" = lock-true;
|
|
||||||
"toolkit.legacyUserProfileCustomizations.stylesheets" = lock-true;
|
|
||||||
"browser.search.suggest.enabled" = lock-false;
|
|
||||||
"browser.search.suggest.enabled.private" = lock-false;
|
|
||||||
"browser.urlbar.suggest.searches" = lock-false;
|
|
||||||
"browser.urlbar.showSearchSuggestionsFirst" = lock-false;
|
|
||||||
"browser.topsites.contile.enabled" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.feeds.section.topstories" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.feeds.snippets" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includePocket" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.showSponsored" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.system.showSponsored" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = lock-false;
|
|
||||||
};
|
|
||||||
|
|
||||||
search = {
|
|
||||||
default = "Kagi";
|
|
||||||
privateDefault = "Kagi";
|
|
||||||
engines = {
|
|
||||||
"Kagi" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://kagi.com/search";
|
|
||||||
params = [
|
|
||||||
{ name = "q"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
iconUpdateURL = "https://kagi.com/favicon.ico";
|
|
||||||
updateInterval = 24 * 60 * 60 * 1000; # every day
|
|
||||||
definedAliases = [ "@k" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Nix Packages" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://search.nixos.org/packages";
|
|
||||||
params = [
|
|
||||||
{ name = "type"; value = "packages"; }
|
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
|
||||||
definedAliases = [ "@np" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"NixOS Wiki" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://nixos.wiki/index.php?search={searchTerms}";
|
|
||||||
}];
|
|
||||||
iconUpdateURL = "https://nixos.wiki/favicon.png";
|
|
||||||
updateInterval = 24 * 60 * 60 * 1000; # every day
|
|
||||||
definedAliases = [ "@nw" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"NixOS Options" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://search.nixos.org/options";
|
|
||||||
params = [
|
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
|
||||||
definedAliases = [ "@no" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Home Manager Options" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://home-manager-options.extranix.com/";
|
|
||||||
params = [
|
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
|
||||||
definedAliases = [ "@hm" "@ho" "@hmo" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Google".metaData.alias = "@g";
|
|
||||||
};
|
|
||||||
force = true; # this is required because otherwise the search.json.mozlz4 symlink gets replaced on every firefox restart
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
cl_adm = {
|
|
||||||
id = 2;
|
|
||||||
|
|
||||||
isDefault = false;
|
|
||||||
userChrome = builtins.readFile ../../../programs/firefox/chrome/userChrome.css;
|
|
||||||
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
|
||||||
tridactyl
|
|
||||||
tampermonkey
|
|
||||||
sidebery
|
|
||||||
browserpass
|
|
||||||
clearurls
|
|
||||||
darkreader
|
|
||||||
enhancer-for-youtube
|
|
||||||
istilldontcareaboutcookies
|
|
||||||
translate-web-pages
|
|
||||||
ublock-origin
|
|
||||||
reddit-enhancement-suite
|
|
||||||
sponsorblock
|
|
||||||
web-archives
|
|
||||||
onepassword-password-manager
|
|
||||||
single-file
|
|
||||||
widegithub
|
|
||||||
enhanced-github
|
|
||||||
unpaywall
|
|
||||||
don-t-fuck-with-paste
|
|
||||||
plasma-integration
|
|
||||||
(buildFirefoxXpiAddon {
|
|
||||||
pname = "shortkeys";
|
|
||||||
version = "4.0.2";
|
|
||||||
addonId = "Shortkeys@Shortkeys.com";
|
|
||||||
url = "https://addons.mozilla.org/firefox/downloads/file/3673761/shortkeys-4.0.2.xpi";
|
|
||||||
sha256 = "c6fe12efdd7a871787ac4526eea79ecc1acda8a99724aa2a2a55c88a9acf467c";
|
|
||||||
meta = with lib;
|
|
||||||
{
|
|
||||||
description = "Easily customizable custom keyboard shortcuts for Firefox. To configure this addon go to Addons (ctrl+shift+a) ->Shortkeys ->Options. Report issues here (please specify that the issue is found in Firefox): https://github.com/mikecrittenden/shortkeys";
|
|
||||||
mozPermissions = [
|
|
||||||
"tabs"
|
|
||||||
"downloads"
|
|
||||||
"clipboardWrite"
|
|
||||||
"browsingData"
|
|
||||||
"storage"
|
|
||||||
"bookmarks"
|
|
||||||
"sessions"
|
|
||||||
"<all_urls>"
|
|
||||||
];
|
|
||||||
platforms = platforms.all;
|
|
||||||
};
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
settings =
|
|
||||||
{
|
|
||||||
"extensions.autoDisableScopes" = 0;
|
|
||||||
"browser.bookmarks.showMobileBookmarks" = lock-true;
|
|
||||||
"toolkit.legacyUserProfileCustomizations.stylesheets" = lock-true;
|
|
||||||
"browser.search.suggest.enabled" = lock-false;
|
|
||||||
"browser.search.suggest.enabled.private" = lock-false;
|
|
||||||
"browser.urlbar.suggest.searches" = lock-false;
|
|
||||||
"browser.urlbar.showSearchSuggestionsFirst" = lock-false;
|
|
||||||
"browser.topsites.contile.enabled" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.feeds.section.topstories" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.feeds.snippets" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includePocket" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.showSponsored" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.system.showSponsored" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = lock-false;
|
|
||||||
};
|
|
||||||
|
|
||||||
search = {
|
|
||||||
default = "Kagi";
|
|
||||||
privateDefault = "Kagi";
|
|
||||||
engines = {
|
|
||||||
"Kagi" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://kagi.com/search";
|
|
||||||
params = [
|
|
||||||
{ name = "q"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
iconUpdateURL = "https://kagi.com/favicon.ico";
|
|
||||||
updateInterval = 24 * 60 * 60 * 1000; # every day
|
|
||||||
definedAliases = [ "@k" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Nix Packages" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://search.nixos.org/packages";
|
|
||||||
params = [
|
|
||||||
{ name = "type"; value = "packages"; }
|
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
|
||||||
definedAliases = [ "@np" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"NixOS Wiki" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://nixos.wiki/index.php?search={searchTerms}";
|
|
||||||
}];
|
|
||||||
iconUpdateURL = "https://nixos.wiki/favicon.png";
|
|
||||||
updateInterval = 24 * 60 * 60 * 1000; # every day
|
|
||||||
definedAliases = [ "@nw" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"NixOS Options" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://search.nixos.org/options";
|
|
||||||
params = [
|
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
|
||||||
definedAliases = [ "@no" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Home Manager Options" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://home-manager-options.extranix.com/";
|
|
||||||
params = [
|
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
|
||||||
definedAliases = [ "@hm" "@ho" "@hmo" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Google".metaData.alias = "@g";
|
|
||||||
};
|
|
||||||
force = true; # this is required because otherwise the search.json.mozlz4 symlink gets replaced on every firefox restart
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
ws_adm = {
|
|
||||||
id = 3;
|
|
||||||
|
|
||||||
isDefault = false;
|
|
||||||
userChrome = builtins.readFile ../../../programs/firefox/chrome/userChrome.css;
|
|
||||||
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
|
||||||
tridactyl
|
|
||||||
tampermonkey
|
|
||||||
sidebery
|
|
||||||
browserpass
|
|
||||||
clearurls
|
|
||||||
darkreader
|
|
||||||
enhancer-for-youtube
|
|
||||||
istilldontcareaboutcookies
|
|
||||||
translate-web-pages
|
|
||||||
ublock-origin
|
|
||||||
reddit-enhancement-suite
|
|
||||||
sponsorblock
|
|
||||||
web-archives
|
|
||||||
onepassword-password-manager
|
|
||||||
single-file
|
|
||||||
widegithub
|
|
||||||
enhanced-github
|
|
||||||
unpaywall
|
|
||||||
don-t-fuck-with-paste
|
|
||||||
plasma-integration
|
|
||||||
(buildFirefoxXpiAddon {
|
|
||||||
pname = "shortkeys";
|
|
||||||
version = "4.0.2";
|
|
||||||
addonId = "Shortkeys@Shortkeys.com";
|
|
||||||
url = "https://addons.mozilla.org/firefox/downloads/file/3673761/shortkeys-4.0.2.xpi";
|
|
||||||
sha256 = "c6fe12efdd7a871787ac4526eea79ecc1acda8a99724aa2a2a55c88a9acf467c";
|
|
||||||
meta = with lib;
|
|
||||||
{
|
|
||||||
description = "Easily customizable custom keyboard shortcuts for Firefox. To configure this addon go to Addons (ctrl+shift+a) ->Shortkeys ->Options. Report issues here (please specify that the issue is found in Firefox): https://github.com/mikecrittenden/shortkeys";
|
|
||||||
mozPermissions = [
|
|
||||||
"tabs"
|
|
||||||
"downloads"
|
|
||||||
"clipboardWrite"
|
|
||||||
"browsingData"
|
|
||||||
"storage"
|
|
||||||
"bookmarks"
|
|
||||||
"sessions"
|
|
||||||
"<all_urls>"
|
|
||||||
];
|
|
||||||
platforms = platforms.all;
|
|
||||||
};
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
settings =
|
|
||||||
{
|
|
||||||
"extensions.autoDisableScopes" = 0;
|
|
||||||
"browser.bookmarks.showMobileBookmarks" = lock-true;
|
|
||||||
"toolkit.legacyUserProfileCustomizations.stylesheets" = lock-true;
|
|
||||||
"browser.search.suggest.enabled" = lock-false;
|
|
||||||
"browser.search.suggest.enabled.private" = lock-false;
|
|
||||||
"browser.urlbar.suggest.searches" = lock-false;
|
|
||||||
"browser.urlbar.showSearchSuggestionsFirst" = lock-false;
|
|
||||||
"browser.topsites.contile.enabled" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.feeds.section.topstories" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.feeds.snippets" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includePocket" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.showSponsored" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.system.showSponsored" = lock-false;
|
|
||||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = lock-false;
|
|
||||||
};
|
|
||||||
|
|
||||||
search = {
|
|
||||||
default = "Kagi";
|
|
||||||
privateDefault = "Kagi";
|
|
||||||
engines = {
|
|
||||||
"Kagi" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://kagi.com/search";
|
|
||||||
params = [
|
|
||||||
{ name = "q"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
iconUpdateURL = "https://kagi.com/favicon.ico";
|
|
||||||
updateInterval = 24 * 60 * 60 * 1000; # every day
|
|
||||||
definedAliases = [ "@k" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Nix Packages" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://search.nixos.org/packages";
|
|
||||||
params = [
|
|
||||||
{ name = "type"; value = "packages"; }
|
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
|
||||||
definedAliases = [ "@np" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"NixOS Wiki" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://nixos.wiki/index.php?search={searchTerms}";
|
|
||||||
}];
|
|
||||||
iconUpdateURL = "https://nixos.wiki/favicon.png";
|
|
||||||
updateInterval = 24 * 60 * 60 * 1000; # every day
|
|
||||||
definedAliases = [ "@nw" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"NixOS Options" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://search.nixos.org/options";
|
|
||||||
params = [
|
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
|
||||||
definedAliases = [ "@no" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Home Manager Options" = {
|
|
||||||
urls = [{
|
|
||||||
template = "https://home-manager-options.extranix.com/";
|
|
||||||
params = [
|
|
||||||
{ name = "query"; value = "{searchTerms}"; }
|
|
||||||
];
|
|
||||||
}];
|
|
||||||
|
|
||||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
|
||||||
definedAliases = [ "@hm" "@ho" "@hmo" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"Google".metaData.alias = "@g";
|
|
||||||
};
|
|
||||||
force = true; # this is required because otherwise the search.json.mozlz4 symlink gets replaced on every firefox restart
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue