switch back to firefox and use searxng
This commit is contained in:
parent
8ab6aa7419
commit
0992508b41
13 changed files with 643 additions and 104 deletions
|
|
@ -208,6 +208,7 @@
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
./system
|
./system
|
||||||
|
./system/searxng
|
||||||
./system/widevine
|
./system/widevine
|
||||||
./system/shell/fish.nix
|
./system/shell/fish.nix
|
||||||
./system/tailscale
|
./system/tailscale
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./discord.nix
|
./discord.nix
|
||||||
./librewolf.nix
|
./firefox.nix
|
||||||
./mpv.nix
|
./mpv.nix
|
||||||
# ./vscode.nix
|
# ./vscode.nix
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -6,13 +6,13 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
home.file.".librewolf/default/chrome/" = {
|
home.file.".mozilla/firefox/default/chrome/" = {
|
||||||
source = ./librewolf_css;
|
source = ./firefox_css;
|
||||||
force = true;
|
force = true;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
home.file.".librewolf/default/chrome/colors.css" = with config.scheme.withHashtag; {
|
home.file.".mozilla/firefox/default/chrome/colors.css" = with config.scheme.withHashtag; {
|
||||||
text = ''
|
text = ''
|
||||||
* {
|
* {
|
||||||
--accent: ${config.scheme.withHashtag.${config.colors.accent}};
|
--accent: ${config.scheme.withHashtag.${config.colors.accent}};
|
||||||
|
|
@ -86,9 +86,9 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
librewolf = {
|
firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.librewolf.override {
|
package = pkgs.firefox.override {
|
||||||
nativeMessagingHosts = with pkgs; [
|
nativeMessagingHosts = with pkgs; [
|
||||||
firefoxpwa
|
firefoxpwa
|
||||||
];
|
];
|
||||||
|
|
@ -113,7 +113,6 @@
|
||||||
"{446900e4-71c2-419f-a6a7-df9c091e268b}".installation_mode = "allowed";
|
"{446900e4-71c2-419f-a6a7-df9c091e268b}".installation_mode = "allowed";
|
||||||
"CanvasBlocker@kkapsner.de".installation_mode = "allowed";
|
"CanvasBlocker@kkapsner.de".installation_mode = "allowed";
|
||||||
"shinigamieyes@shinigamieyes".installation_mode = "allowed";
|
"shinigamieyes@shinigamieyes".installation_mode = "allowed";
|
||||||
# "".installation_mode = "allowed";
|
|
||||||
};
|
};
|
||||||
DisableTelemetry = true;
|
DisableTelemetry = true;
|
||||||
DisableFirefoxStudies = true;
|
DisableFirefoxStudies = true;
|
||||||
|
|
@ -124,8 +123,8 @@
|
||||||
Fingerprinting = true;
|
Fingerprinting = true;
|
||||||
};
|
};
|
||||||
DisablePocket = true;
|
DisablePocket = true;
|
||||||
DisableFirefoxAccounts = false;
|
DisableFirefoxAccounts = true;
|
||||||
DisableAccounts = false;
|
DisableAccounts = true;
|
||||||
DisableFirefoxScreenshots = true;
|
DisableFirefoxScreenshots = true;
|
||||||
OverrideFirstRunPage = "";
|
OverrideFirstRunPage = "";
|
||||||
OverridePostUpdatePage = "";
|
OverridePostUpdatePage = "";
|
||||||
|
|
@ -169,8 +168,8 @@
|
||||||
"xpinstall.signatures.required" = false;
|
"xpinstall.signatures.required" = false;
|
||||||
"extensions.update.autoUpdateDefault" = false;
|
"extensions.update.autoUpdateDefault" = false;
|
||||||
"extensions.update.enabled" = false;
|
"extensions.update.enabled" = false;
|
||||||
"browser.search.defaultenginename" = "google";
|
"browser.search.defaultenginename" = "searxng";
|
||||||
"browser.search.order.1" = "google";
|
"browser.search.order.1" = "searxng";
|
||||||
"browser.toolbars.bookmarks.visibility" = "newtab";
|
"browser.toolbars.bookmarks.visibility" = "newtab";
|
||||||
|
|
||||||
"signon.rememberSignons" = false;
|
"signon.rememberSignons" = false;
|
||||||
|
|
@ -207,6 +206,8 @@
|
||||||
"browser.newtabpage.activity-stream.system.showSponsored" = false;
|
"browser.newtabpage.activity-stream.system.showSponsored" = false;
|
||||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
||||||
"browser.newtabpage.activity-stream.showWeather" = false;
|
"browser.newtabpage.activity-stream.showWeather" = false;
|
||||||
|
"browser.download.autoHideButton" = false;
|
||||||
|
"browser.startup.homepage" = "http://localhost:8080/";
|
||||||
|
|
||||||
# Disable Firefox's machine learning (AI) features
|
# Disable Firefox's machine learning (AI) features
|
||||||
"browser.ml.enable" = false;
|
"browser.ml.enable" = false;
|
||||||
|
|
@ -218,16 +219,61 @@
|
||||||
# Vertical tabs
|
# Vertical tabs
|
||||||
"sidebar.verticalTabs" = true;
|
"sidebar.verticalTabs" = true;
|
||||||
"sidebar.verticalTabs.dragToPinPromo.dismissed" = true;
|
"sidebar.verticalTabs.dragToPinPromo.dismissed" = true;
|
||||||
"browser.uiCustomization.navBarWhenVerticalTabs" = [
|
"browser.uiCustomization.state" = {
|
||||||
"back-button"
|
placements = {
|
||||||
"forward-button"
|
widget-overflow-fixed-list = [ ];
|
||||||
"stop-reload-button"
|
unified-extensions-area = [
|
||||||
"reload-button"
|
"sponsorblocker_ajay_app-browser-action"
|
||||||
"urlbar-container"
|
"ublock0_raymondhill_net-browser-action"
|
||||||
"downloads-button"
|
"jid1-mnnxcxisbpnsxq_jetpack-browser-action"
|
||||||
"unified-extensions-button"
|
"gdpr_cavi_au_dk-browser-action"
|
||||||
"fxa-toolbar-menu-button"
|
"firefoxpwa_filips_si-browser-action"
|
||||||
];
|
"plasma-browser-integration_kde_org-browser-action"
|
||||||
|
"canvasblocker_kkapsner_de-browser-action"
|
||||||
|
"_5cce4ab5-3d47-41b9-af5e-8203eea05245_-browser-action"
|
||||||
|
"_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action"
|
||||||
|
"_aecec67f-0d10-4fa7-b7c7-609a2db280cf_-browser-action"
|
||||||
|
"_7a7a4a92-a2a0-41d1-9fd7-1e92480d612d_-browser-action"
|
||||||
|
];
|
||||||
|
nav-bar = [
|
||||||
|
# "sidebar-button"
|
||||||
|
"back-button"
|
||||||
|
"forward-button"
|
||||||
|
"stop-reload-button"
|
||||||
|
"urlbar-container"
|
||||||
|
"unified-extensions-button"
|
||||||
|
"downloads-button"
|
||||||
|
];
|
||||||
|
toolbar-menubar = [ "menubar-items" ];
|
||||||
|
TabsToolbar = [ ];
|
||||||
|
vertical-tabs = [ "tabbrowser-tabs" ];
|
||||||
|
PersonalToolbar = [ "personal-bookmarks" ];
|
||||||
|
};
|
||||||
|
seen = [
|
||||||
|
"gdpr_cavi_au_dk-browser-action"
|
||||||
|
"firefoxpwa_filips_si-browser-action"
|
||||||
|
"plasma-browser-integration_kde_org-browser-action"
|
||||||
|
"jid1-mnnxcxisbpnsxq_jetpack-browser-action"
|
||||||
|
"canvasblocker_kkapsner_de-browser-action"
|
||||||
|
"_5cce4ab5-3d47-41b9-af5e-8203eea05245_-browser-action"
|
||||||
|
"ublock0_raymondhill_net-browser-action"
|
||||||
|
"_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action"
|
||||||
|
"_aecec67f-0d10-4fa7-b7c7-609a2db280cf_-browser-action"
|
||||||
|
"_7a7a4a92-a2a0-41d1-9fd7-1e92480d612d_-browser-action"
|
||||||
|
"sponsorblocker_ajay_app-browser-action"
|
||||||
|
"developer-button"
|
||||||
|
];
|
||||||
|
dirtyAreaCache = [
|
||||||
|
"unified-extensions-area"
|
||||||
|
"nav-bar"
|
||||||
|
"TabsToolbar"
|
||||||
|
"vertical-tabs"
|
||||||
|
"PersonalToolbar"
|
||||||
|
"toolbar-menubar"
|
||||||
|
];
|
||||||
|
currentVersion = 23;
|
||||||
|
newElementCount = 1;
|
||||||
|
};
|
||||||
|
|
||||||
"privacy.resistFingerprinting" = false;
|
"privacy.resistFingerprinting" = false;
|
||||||
"privacy.clearOnShutdown.history" = false;
|
"privacy.clearOnShutdown.history" = false;
|
||||||
|
|
@ -257,13 +303,13 @@
|
||||||
search =
|
search =
|
||||||
let
|
let
|
||||||
nixIcon = "${pkgs.colloid-icon-theme}/share/icons/Colloid/apps/scalable/nix-snowflake.svg";
|
nixIcon = "${pkgs.colloid-icon-theme}/share/icons/Colloid/apps/scalable/nix-snowflake.svg";
|
||||||
googleIcon = "${pkgs.colloid-icon-theme}/share/icons/Colloid/apps/scalable/google.svg";
|
searchIcon = "${pkgs.colloid-icon-theme}/share/icons/Colloid-Dark/places/symbolic/folder-saved-search-symbolic.svg";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
force = true;
|
force = true;
|
||||||
default = "google";
|
default = "searxng";
|
||||||
order = [
|
order = [
|
||||||
"google"
|
"searxng"
|
||||||
];
|
];
|
||||||
engines = {
|
engines = {
|
||||||
nix-packages = {
|
nix-packages = {
|
||||||
|
|
@ -317,10 +363,10 @@
|
||||||
definedAliases = [ "@nw" ];
|
definedAliases = [ "@nw" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
google = {
|
searxng = {
|
||||||
name = "Google";
|
name = "SearXNG";
|
||||||
urls = [ { template = "https://google.com/search?q={searchTerms}"; } ];
|
urls = [ { template = "http://localhost:8080/search?q={searchTerms}"; } ];
|
||||||
icon = googleIcon;
|
icon = searchIcon;
|
||||||
definedAliases = [ "@go" ];
|
definedAliases = [ "@go" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
37
home/apps/firefox_css/theme/hide.css
Normal file
37
home/apps/firefox_css/theme/hide.css
Normal file
|
|
@ -0,0 +1,37 @@
|
||||||
|
#tracking-protection-icon-container {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bookmark-item[container] {
|
||||||
|
list-style-image: url("chrome://global/skin/dirListing/folder.png") !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#toolbar-menubar {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#menubar-items {
|
||||||
|
visibility: hidden !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.browserSidebarContainer {
|
||||||
|
border: 0px solid var(--surface0) !important;
|
||||||
|
border-radius: 4px !important;
|
||||||
|
background-color: var(--mantle) !important;
|
||||||
|
overflow: hidden !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.browserContainer {
|
||||||
|
border: 0px !important;
|
||||||
|
margin-top: 8px !important;
|
||||||
|
margin-left: 8px !important;
|
||||||
|
margin-right: 8px !important;
|
||||||
|
margin-bottom: 8px !important;
|
||||||
|
background-color: var(--mantle) !important;
|
||||||
|
border-radius: 2px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.browserStack {
|
||||||
|
border-radius: 2px !important;
|
||||||
|
background-color: var(--base) !important;
|
||||||
|
}
|
||||||
392
home/apps/firefox_css/theme/theme.css
Normal file
392
home/apps/firefox_css/theme/theme.css
Normal file
|
|
@ -0,0 +1,392 @@
|
||||||
|
@import "../colors.css";
|
||||||
|
|
||||||
|
/* ========================================================================
|
||||||
|
global variables
|
||||||
|
======================================================================== */
|
||||||
|
:root {
|
||||||
|
/* arrow panels */
|
||||||
|
--arrowpanel-background: var(--surface0) !important;
|
||||||
|
--arrowpanel-border-color: var(--surface1) !important;
|
||||||
|
--arrowpanel-color: var(--text) !important;
|
||||||
|
--arrowpanel-dimmed-even-further: var(--overlay0) !important;
|
||||||
|
--arrowpanel-dimmed-further: var(--subtext1) !important;
|
||||||
|
--arrowpanel-dimmed: var(--subtext0) !important;
|
||||||
|
--default-arrowpanel-background: var(--surface0) !important;
|
||||||
|
--default-arrowpanel-border-color: var(--surface1) !important;
|
||||||
|
--default-arrowpanel-color: var(--text) !important;
|
||||||
|
|
||||||
|
/* autocomplete & popups */
|
||||||
|
--autocomplete-popup-background: var(--mantle) !important;
|
||||||
|
--autocomplete-popup-color: var(--text) !important;
|
||||||
|
--autocomplete-popup-highlight-background: var(--surface1) !important;
|
||||||
|
--autocomplete-popup-highlight-color: var(--text) !important;
|
||||||
|
--urlbar-popup-action-color: var(--accent) !important;
|
||||||
|
--urlbar-popup-url-color: var(--blue) !important;
|
||||||
|
--urlbar-separator-color: var(--surface0) !important;
|
||||||
|
|
||||||
|
/* buttons (global) */
|
||||||
|
--backbutton-active-background: var(--surface1) !important;
|
||||||
|
--backbutton-background: transparent !important;
|
||||||
|
--backbutton-border-color: transparent !important;
|
||||||
|
--backbutton-hover-background: var(--surface0) !important;
|
||||||
|
--cfr-active-color: var(--accent) !important;
|
||||||
|
--cfr-button-addons-icon: var(--text) !important;
|
||||||
|
--cfr-button-features-icon: var(--text) !important;
|
||||||
|
|
||||||
|
/* color palette (blue) */
|
||||||
|
--blue-40-a10: color-mix(in srgb, var(--blue), transparent 90%) !important;
|
||||||
|
--blue-40: var(--blue) !important;
|
||||||
|
--blue-50-a30: color-mix(in srgb, var(--blue), transparent 70%) !important;
|
||||||
|
--blue-50: var(--blue) !important;
|
||||||
|
--blue-60: var(--sapphire) !important;
|
||||||
|
--blue-70: var(--sky) !important;
|
||||||
|
--blue-80: var(--teal) !important;
|
||||||
|
|
||||||
|
/* color palette (green) */
|
||||||
|
--green-50: var(--green) !important;
|
||||||
|
--green-60: var(--green) !important;
|
||||||
|
--green-70: var(--teal) !important;
|
||||||
|
--green-80: var(--teal) !important;
|
||||||
|
--green-90: var(--teal) !important;
|
||||||
|
|
||||||
|
/* color palette (grey/overlay) */
|
||||||
|
--grey-20: var(--subtext1) !important;
|
||||||
|
--grey-30: var(--subtext0) !important;
|
||||||
|
--grey-40: var(--overlay2) !important;
|
||||||
|
--grey-60: var(--overlay0) !important;
|
||||||
|
--grey-70: var(--overlay2) !important;
|
||||||
|
--grey-80: var(--overlay2) !important;
|
||||||
|
--grey-90-a10: color-mix(
|
||||||
|
in srgb,
|
||||||
|
var(--surface1),
|
||||||
|
transparent 90%
|
||||||
|
) !important;
|
||||||
|
--grey-90-a20: color-mix(
|
||||||
|
in srgb,
|
||||||
|
var(--surface1),
|
||||||
|
transparent 80%
|
||||||
|
) !important;
|
||||||
|
--grey-90-a30: color-mix(
|
||||||
|
in srgb,
|
||||||
|
var(--surface1),
|
||||||
|
transparent 70%
|
||||||
|
) !important;
|
||||||
|
--grey-90-a50: color-mix(
|
||||||
|
in srgb,
|
||||||
|
var(--surface1),
|
||||||
|
transparent 50%
|
||||||
|
) !important;
|
||||||
|
--grey-90-a60: color-mix(
|
||||||
|
in srgb,
|
||||||
|
var(--surface1),
|
||||||
|
transparent 40%
|
||||||
|
) !important;
|
||||||
|
--grey-90: var(--surface1) !important;
|
||||||
|
|
||||||
|
/* color palette (misc) */
|
||||||
|
--orange-50: var(--peach) !important;
|
||||||
|
--purple-70: var(--mauve) !important;
|
||||||
|
|
||||||
|
/* color palette (red) */
|
||||||
|
--red-50-a30: color-mix(in srgb, var(--red), transparent 70%) !important;
|
||||||
|
--red-50: var(--red) !important;
|
||||||
|
--red-60: var(--maroon) !important;
|
||||||
|
--red-70: var(--maroon) !important;
|
||||||
|
--red-80: var(--maroon) !important;
|
||||||
|
--red-90: var(--maroon) !important;
|
||||||
|
|
||||||
|
/* color palette (yellow) */
|
||||||
|
--yellow-10: var(--yellow) !important;
|
||||||
|
--yellow-50: var(--yellow) !important;
|
||||||
|
--yellow-60-a30: color-mix(
|
||||||
|
in srgb,
|
||||||
|
var(--yellow),
|
||||||
|
transparent 70%
|
||||||
|
) !important;
|
||||||
|
--yellow-60: var(--yellow) !important;
|
||||||
|
--yellow-70: var(--peach) !important;
|
||||||
|
--yellow-80: var(--peach) !important;
|
||||||
|
--yellow-90: var(--peach) !important;
|
||||||
|
|
||||||
|
/* context menus */
|
||||||
|
--menu-background-color: var(--base) !important;
|
||||||
|
--menu-border-color: var(--surface1) !important;
|
||||||
|
--menu-color: var(--text) !important;
|
||||||
|
--menu-disabled-color: var(--overlay0) !important;
|
||||||
|
--menu-icon-opacity: 1 !important;
|
||||||
|
--menuitem-disabled-hover-background-color: transparent !important;
|
||||||
|
--menuitem-hover-background-color: var(--surface1) !important;
|
||||||
|
--panel-disabled-color: var(--overlay0) !important;
|
||||||
|
--panel-separator-color: var(--surface0) !important;
|
||||||
|
|
||||||
|
/* in-content ui (cards & boxes) */
|
||||||
|
--card-outline-color: var(--surface1) !important;
|
||||||
|
--card-shadow-focus: 0 0 0 2px var(--accent) !important;
|
||||||
|
--card-shadow-hover: 0 4px 8px
|
||||||
|
color-mix(in srgb, var(--crust), transparent 80%) !important;
|
||||||
|
--card-shadow: 0 1px 4px color-mix(in srgb, var(--crust), transparent 90%) !important;
|
||||||
|
--in-content-box-background-active: var(--surface1) !important;
|
||||||
|
--in-content-box-background-hover: var(--surface1) !important;
|
||||||
|
--in-content-box-background-odd: var(--mantle) !important;
|
||||||
|
--in-content-box-background: var(--surface0) !important;
|
||||||
|
--in-content-box-border-color: var(--surface1) !important;
|
||||||
|
--in-content-box-info-background: var(--surface0) !important;
|
||||||
|
|
||||||
|
/* in-content ui (colors & text) */
|
||||||
|
--in-content-deemphasized-text: var(--subtext0) !important;
|
||||||
|
--in-content-link-color-active: var(--sky) !important;
|
||||||
|
--in-content-link-color-hover: var(--sapphire) !important;
|
||||||
|
--in-content-link-color-visited: var(--lavender) !important;
|
||||||
|
--in-content-link-color: var(--blue) !important;
|
||||||
|
--in-content-page-background: var(--base) !important;
|
||||||
|
--in-content-page-color: var(--text) !important;
|
||||||
|
--in-content-selected-text: var(--surface2) !important;
|
||||||
|
--in-content-text-color: var(--text) !important;
|
||||||
|
|
||||||
|
/* in-content ui (forms & buttons) */
|
||||||
|
--in-content-border-active-shadow: 0 0 0 2px var(--accent) !important;
|
||||||
|
--in-content-border-active: var(--accent) !important;
|
||||||
|
--in-content-border-color: var(--surface1) !important;
|
||||||
|
--in-content-border-focus: var(--accent) !important;
|
||||||
|
--in-content-border-highlight: var(--blue) !important;
|
||||||
|
--in-content-border-hover: var(--surface2) !important;
|
||||||
|
--in-content-border-invalid-shadow: 0 0 0 2px var(--red) !important;
|
||||||
|
--in-content-border-invalid: var(--red) !important;
|
||||||
|
--in-content-button-background-active: var(--surface1) !important;
|
||||||
|
--in-content-button-background-hover: var(--surface2) !important;
|
||||||
|
--in-content-button-background: var(--surface0) !important;
|
||||||
|
--in-content-category-background-active: var(--surface1) !important;
|
||||||
|
--in-content-category-background-hover: var(--surface0) !important;
|
||||||
|
--in-content-category-background-selected-active: var(--surface2) !important;
|
||||||
|
--in-content-category-background-selected-hover: var(--surface1) !important;
|
||||||
|
--in-content-category-outline-focus: var(--accent) !important;
|
||||||
|
--in-content-category-text-selected-active: var(--accent) !important;
|
||||||
|
--in-content-category-text-selected: var(--accent) !important;
|
||||||
|
--in-content-item-hover: var(--surface0) !important;
|
||||||
|
--in-content-item-selected: var(--surface1) !important;
|
||||||
|
--in-content-primary-button-background-active: var(--maroon) !important;
|
||||||
|
--in-content-primary-button-background-hover: var(--peach) !important;
|
||||||
|
--in-content-primary-button-background: var(--accent) !important;
|
||||||
|
|
||||||
|
/* in-content ui (misc) */
|
||||||
|
--chrome-content-separator-color: var(--surface0) !important;
|
||||||
|
--in-content-dialog-header-background: var(--mantle) !important;
|
||||||
|
--in-content-tab-color: var(--subtext0) !important;
|
||||||
|
--in-content-table-background: var(--mantle) !important;
|
||||||
|
--in-content-table-border-dark-color: var(--surface1) !important;
|
||||||
|
--in-content-table-header-background: var(--surface0) !important;
|
||||||
|
--in-content-warning-container: var(--red) !important;
|
||||||
|
--shadow-10: 0 1px 2px color-mix(in srgb, var(--crust), transparent 90%) !important;
|
||||||
|
--shadow-30: 0 4px 8px color-mix(in srgb, var(--crust), transparent 80%) !important;
|
||||||
|
|
||||||
|
/* lightweight theme (lwt) */
|
||||||
|
--lwt-accent-color: var(--accent) !important;
|
||||||
|
--lwt-sidebar-background-color: var(--mantle) !important;
|
||||||
|
--lwt-sidebar-text-color: var(--text) !important;
|
||||||
|
--lwt-text-color: var(--text) !important;
|
||||||
|
--lwt-toolbar-field-background-color: var(--crust) !important;
|
||||||
|
--lwt-toolbar-field-border-color: var(--surface0) !important;
|
||||||
|
--lwt-toolbar-field-color: var(--text) !important;
|
||||||
|
--lwt-toolbar-field-focus-color: var(--text) !important;
|
||||||
|
--lwt-toolbar-field-focus: var(--accent) !important;
|
||||||
|
--lwt-toolbarbutton-icon-fill: var(--text) !important;
|
||||||
|
|
||||||
|
/* navigator tabs */
|
||||||
|
--tab-line-color: var(--accent) !important;
|
||||||
|
--tab-loading-fill: var(--accent) !important;
|
||||||
|
--tabs-border-color: var(--surface0) !important;
|
||||||
|
|
||||||
|
/* new tab page */
|
||||||
|
--newtab-background-color: var(--base) !important;
|
||||||
|
--newtab-border-primary-color: var(--surface1) !important;
|
||||||
|
--newtab-border-secondary-color: var(--surface0) !important;
|
||||||
|
--newtab-button-primary-color: var(--accent) !important;
|
||||||
|
--newtab-button-secondary-color: var(--surface0) !important;
|
||||||
|
--newtab-card-active-outline-color: var(--accent) !important;
|
||||||
|
--newtab-card-background-color: var(--surface0) !important;
|
||||||
|
--newtab-card-hairline-color: var(--surface1) !important;
|
||||||
|
--newtab-card-placeholder-color: var(--surface1) !important;
|
||||||
|
--newtab-card-shadow: 0 1px 4px
|
||||||
|
color-mix(in srgb, var(--crust), transparent 80%) !important;
|
||||||
|
--newtab-contextmenu-background-color: var(--surface0) !important;
|
||||||
|
--newtab-contextmenu-button-color: var(--text) !important;
|
||||||
|
--newtab-element-active-color: var(--surface1) !important;
|
||||||
|
--newtab-element-hover-color: var(--surface0) !important;
|
||||||
|
--newtab-feed-button-background-faded: var(--surface1) !important;
|
||||||
|
--newtab-feed-button-background: var(--surface0) !important;
|
||||||
|
--newtab-feed-button-spinner: var(--text) !important;
|
||||||
|
--newtab-feed-button-text-faded: var(--subtext0) !important;
|
||||||
|
--newtab-feed-button-text: var(--text) !important;
|
||||||
|
--newtab-icon-primary-color: var(--text) !important;
|
||||||
|
--newtab-icon-secondary-color: var(--subtext0) !important;
|
||||||
|
--newtab-icon-tertiary-color: var(--overlay0) !important;
|
||||||
|
--newtab-inner-box-shadow-color: color-mix(
|
||||||
|
in srgb,
|
||||||
|
var(--crust),
|
||||||
|
transparent 80%
|
||||||
|
) !important;
|
||||||
|
--newtab-link-primary-color: var(--blue) !important;
|
||||||
|
--newtab-link-secondary-color: var(--sapphire) !important;
|
||||||
|
--newtab-modal-color: var(--base) !important;
|
||||||
|
--newtab-overlay-color: color-mix(
|
||||||
|
in srgb,
|
||||||
|
var(--crust),
|
||||||
|
transparent 40%
|
||||||
|
) !important;
|
||||||
|
--newtab-search-border-color: var(--surface0) !important;
|
||||||
|
--newtab-search-dropdown-color: var(--mantle) !important;
|
||||||
|
--newtab-search-dropdown-header-color: var(--subtext1) !important;
|
||||||
|
--newtab-search-header-background-color: var(--base) !important;
|
||||||
|
--newtab-search-icon-color: var(--text) !important;
|
||||||
|
--newtab-search-icon: var(--text) !important;
|
||||||
|
--newtab-search-wordmark-color: var(--text) !important;
|
||||||
|
--newtab-section-active-contextmenu-color: var(--text) !important;
|
||||||
|
--newtab-section-header-text-color: var(--text) !important;
|
||||||
|
--newtab-section-navigation-text-color: var(--subtext0) !important;
|
||||||
|
--newtab-snippets-background-color: var(--surface0) !important;
|
||||||
|
--newtab-snippets-hairline-color: var(--surface1) !important;
|
||||||
|
--newtab-text-conditional-color: var(--red) !important;
|
||||||
|
--newtab-text-primary-color: var(--text) !important;
|
||||||
|
--newtab-text-secondary-color: var(--subtext0) !important;
|
||||||
|
--newtab-textbox-background-color: var(--crust) !important;
|
||||||
|
--newtab-textbox-border: var(--surface0) !important;
|
||||||
|
--newtab-textbox-focus-boxshadow: 0 0 0 2px var(--accent) !important;
|
||||||
|
--newtab-textbox-focus-color: var(--accent) !important;
|
||||||
|
--newtab-topsites-background-color: var(--base) !important;
|
||||||
|
--newtab-topsites-icon-shadow: none !important;
|
||||||
|
--newtab-topsites-label-color: var(--text) !important;
|
||||||
|
--trailhead-card-button-background-active-color: var(--accent) !important;
|
||||||
|
--trailhead-card-button-background-color: var(--surface1) !important;
|
||||||
|
--trailhead-card-button-background-hover-color: var(--surface2) !important;
|
||||||
|
--trailhead-cards-background-color: var(--surface0) !important;
|
||||||
|
--trailhead-header-text-color: var(--text) !important;
|
||||||
|
|
||||||
|
/* notifications */
|
||||||
|
--short-notification-background: var(--surface0) !important;
|
||||||
|
--short-notification-gradient: linear-gradient(
|
||||||
|
var(--surface0),
|
||||||
|
var(--surface0)
|
||||||
|
) !important;
|
||||||
|
|
||||||
|
/* sidebar */
|
||||||
|
--sidebar-background-color: var(--mantle) !important;
|
||||||
|
--sidebar-border-color: var(--surface0) !important;
|
||||||
|
--sidebar-text-color: var(--text) !important;
|
||||||
|
|
||||||
|
/* toolbar & urlbar */
|
||||||
|
--toolbar-bgcolor: var(--mantle) !important;
|
||||||
|
--toolbar-color: var(--text) !important;
|
||||||
|
--toolbar-field-focus-border-color: var(--accent) !important;
|
||||||
|
--toolbar-non-lwt-bgcolor: var(--mantle) !important;
|
||||||
|
--toolbar-non-lwt-textcolor: var(--text) !important;
|
||||||
|
--toolbarbutton-active-background: var(--surface1) !important;
|
||||||
|
--toolbarbutton-focus-outline: var(--accent) !important;
|
||||||
|
--toolbarbutton-hover-background: var(--surface0) !important;
|
||||||
|
--toolbarbutton-icon-fill-attention: var(--blue) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ========================================================================
|
||||||
|
global component styles
|
||||||
|
======================================================================== */
|
||||||
|
|
||||||
|
#sidebar-main > *[expanded] {
|
||||||
|
background-color: var(--mantle) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
*,
|
||||||
|
:root {
|
||||||
|
accent-color: var(--accent) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TabsToolbar {
|
||||||
|
background-color: var(--mantle) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#sidebar-launcher-splitter:hover {
|
||||||
|
background-color: var(--accent) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
[_moz-menuactive="true"] {
|
||||||
|
background-color: var(--accent) !important;
|
||||||
|
color: var(--mantle) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
menupopup {
|
||||||
|
--panel-background: var(--base) !important;
|
||||||
|
--panel-border-color: var(--surface1) !important;
|
||||||
|
--panel-text: var(--text) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
menuseparator {
|
||||||
|
border-color: var(--surface1) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ========================================================================
|
||||||
|
overrides & media queries
|
||||||
|
======================================================================== */
|
||||||
|
@media {
|
||||||
|
#PersonalToolbar,
|
||||||
|
#nav-bar {
|
||||||
|
background-color: var(--mantle) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
:root {
|
||||||
|
/* browser tabs */
|
||||||
|
.tab-background[multiselected] {
|
||||||
|
--focus-outline-color: var(--surface0);
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-background[selected]:not([multiselected]) {
|
||||||
|
outline: 1px solid var(--surface0);
|
||||||
|
outline-offset: -1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabbrowser-tab[selected="true"] .tab-background {
|
||||||
|
border: 1px solid var(--surface0) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tabbrowser-tabs {
|
||||||
|
--tab-loading-fill: var(--text) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* general variable overrides */
|
||||||
|
--arrowpanel-background: var(--surface0) !important;
|
||||||
|
--arrowpanel-border-color: var(--surface0) !important;
|
||||||
|
--arrowpanel-color: var(--text) !important;
|
||||||
|
--chrome-content-separator-color: var(--surface0) !important;
|
||||||
|
--input-bgcolor: var(--crust) !important;
|
||||||
|
--input-border-color: var(--mantle) !important;
|
||||||
|
--input-color: var(--text) !important;
|
||||||
|
--tab-selected-bgcolor: var(--base) !important;
|
||||||
|
--tab-selected-textcolor: var(--text) !important;
|
||||||
|
--toolbar-bgcolor: var(--mantle) !important;
|
||||||
|
--toolbar-field-background-color: var(--input-bgcolor) !important;
|
||||||
|
--toolbar-field-border-color: var(--input-border-color) !important;
|
||||||
|
--toolbar-field-color: var(--input-color) !important;
|
||||||
|
--toolbar-field-focus-background-color: var(--base) !important;
|
||||||
|
--toolbar-field-focus-border-color: var(--surface0) !important;
|
||||||
|
--toolbarseparator-color: var(--text) !important;
|
||||||
|
--toolbox-non-lwt-bgcolor: var(--crust) !important;
|
||||||
|
--toolbox-non-lwt-textcolor: var(--text) !important;
|
||||||
|
|
||||||
|
/* inputs & selection */
|
||||||
|
#urlbar-input:focus::selection,
|
||||||
|
.searchbar-textbox:focus::selection {
|
||||||
|
background-color: var(--text);
|
||||||
|
color: var(--surface0);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* toolbar buttons */
|
||||||
|
--toolbarbutton-active-background: var(--overlay0) !important;
|
||||||
|
--toolbarbutton-icon-fill: var(--text) !important;
|
||||||
|
--toolbarbutton-icon-fill-attention: var(--text) !important;
|
||||||
|
|
||||||
|
/* urlbar */
|
||||||
|
--urlbarView-highlight-background: var(--overlay0) !important;
|
||||||
|
--urlbarView-highlight-color: var(--text) !important;
|
||||||
|
|
||||||
|
&:where([tabsintitlebar]) {
|
||||||
|
--toolbox-non-lwt-bgcolor-inactive: var(--crust) !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
#tracking-protection-icon-container {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bookmark-item[container] {
|
|
||||||
list-style-image: url("chrome://global/skin/dirListing/folder.png") !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
#toolbar-menubar {
|
|
||||||
display: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
#menubar-items {
|
|
||||||
visibility: hidden !important;
|
|
||||||
}
|
|
||||||
|
|
@ -1,56 +0,0 @@
|
||||||
@import "../colors.css";
|
|
||||||
@media {
|
|
||||||
#nav-bar,
|
|
||||||
#PersonalToolbar {
|
|
||||||
background-color: var(--mantle) !important;
|
|
||||||
}
|
|
||||||
:root {
|
|
||||||
.tabbrowser-tab[selected="true"] .tab-background {
|
|
||||||
border: 1px solid var(--surface0) !important;
|
|
||||||
}
|
|
||||||
--toolbar-bgcolor: var(--mantle) !important;
|
|
||||||
--toolbox-non-lwt-bgcolor: var(--crust) !important;
|
|
||||||
--toolbox-non-lwt-textcolor: var(--text) !important;
|
|
||||||
--input-bgcolor: var(--crust) !important;
|
|
||||||
--toolbar-field-background-color: var(--input-bgcolor) !important;
|
|
||||||
--input-color: var(--text) !important;
|
|
||||||
--toolbar-field-color: var(--input-color) !important;
|
|
||||||
.tab-background[selected]:not([multiselected]) {
|
|
||||||
outline: 1px solid var(--surface0);
|
|
||||||
outline-offset: -1px;
|
|
||||||
}
|
|
||||||
.tab-background[multiselected] {
|
|
||||||
--focus-outline-color: var(--surface0);
|
|
||||||
}
|
|
||||||
--arrowpanel-background: var(--surface0) !important;
|
|
||||||
--arrowpanel-color: var(--text) !important;
|
|
||||||
--toolbarbutton-active-background: var(--overlay0) !important;
|
|
||||||
&:where([tabsintitlebar]) {
|
|
||||||
--toolbox-non-lwt-bgcolor-inactive: var(--crust) !important;
|
|
||||||
}
|
|
||||||
--toolbarbutton-icon-fill-attention: var(--text) !important;
|
|
||||||
--toolbarbutton-icon-fill: var(--text) !important;
|
|
||||||
--arrowpanel-border-color: var(--surface0) !important;
|
|
||||||
--urlbarView-highlight-color: var(--text) !important;
|
|
||||||
--urlbarView-highlight-background: var(--overlay0) !important;
|
|
||||||
#tabbrowser-tabs {
|
|
||||||
--tab-loading-fill: var(--text) !important;
|
|
||||||
}
|
|
||||||
--tab-selected-bgcolor: var(--base) !important;
|
|
||||||
--tab-selected-textcolor: var(--text) !important;
|
|
||||||
--chrome-content-separator-color: var(--surface0) !important;
|
|
||||||
--toolbar-field-focus-border-color: var(--surface0) !important;
|
|
||||||
--input-border-color: var(--mantle) !important;
|
|
||||||
--toolbar-field-border-color: var(--input-border-color) !important;
|
|
||||||
--toolbar-field-focus-background-color: var(--base) !important;
|
|
||||||
#urlbar-input:focus::selection,
|
|
||||||
.searchbar-textbox:focus::selection {
|
|
||||||
color: var(--surface0);
|
|
||||||
}
|
|
||||||
#urlbar-input:focus::selection,
|
|
||||||
.searchbar-textbox:focus::selection {
|
|
||||||
background-color: var(--text);
|
|
||||||
}
|
|
||||||
--toolbarseparator-color: var(--text) !important;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.librewolf.profiles.default.search.engines.uesp = {
|
programs.firefox.profiles.default.search.engines.uesp = {
|
||||||
name = "Unofficial Elder Scrolls Pages";
|
name = "Unofficial Elder Scrolls Pages";
|
||||||
urls = [
|
urls = [
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -270,7 +270,7 @@
|
||||||
{
|
{
|
||||||
iconTasks = {
|
iconTasks = {
|
||||||
launchers = [
|
launchers = [
|
||||||
"applications:librewolf.desktop"
|
"applications:firefox.desktop"
|
||||||
"applications:org.kde.dolphin.desktop"
|
"applications:org.kde.dolphin.desktop"
|
||||||
"applications:vesktop.desktop"
|
"applications:vesktop.desktop"
|
||||||
"applications:kitty.desktop"
|
"applications:kitty.desktop"
|
||||||
|
|
|
||||||
|
|
@ -143,7 +143,7 @@
|
||||||
{
|
{
|
||||||
matches = [
|
matches = [
|
||||||
{
|
{
|
||||||
app-id = "librewolf$";
|
app-id = "firefox$";
|
||||||
title = "^Picture-in-Picture$";
|
title = "^Picture-in-Picture$";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
|
||||||
134
system/searxng/default.nix
Normal file
134
system/searxng/default.nix
Normal file
|
|
@ -0,0 +1,134 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
|
||||||
|
services.searx = {
|
||||||
|
enable = true;
|
||||||
|
redisCreateLocally = true;
|
||||||
|
settings = {
|
||||||
|
server = {
|
||||||
|
secret_key = lib.removeSuffix "\n" (
|
||||||
|
builtins.readFile (
|
||||||
|
pkgs.runCommand "gen-key" { buildInputs = [ pkgs.openssl ]; } "openssl rand -hex 32 > $out"
|
||||||
|
)
|
||||||
|
);
|
||||||
|
port = 8080;
|
||||||
|
bind_address = "127.0.0.1";
|
||||||
|
};
|
||||||
|
|
||||||
|
general = {
|
||||||
|
debug = false;
|
||||||
|
instance_name = "searxng: ${config.system.name}";
|
||||||
|
donation_url = false;
|
||||||
|
contact_url = false;
|
||||||
|
privacypolicy_url = false;
|
||||||
|
enable_metrics = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
ui = {
|
||||||
|
static_use_hash = true;
|
||||||
|
default_locale = "en";
|
||||||
|
query_in_title = true;
|
||||||
|
infinite_scroll = false;
|
||||||
|
center_alignment = true;
|
||||||
|
default_theme = "simple";
|
||||||
|
theme_args.simple_style = "auto";
|
||||||
|
search_on_category_select = false;
|
||||||
|
hotkeys = "vim";
|
||||||
|
};
|
||||||
|
|
||||||
|
search = {
|
||||||
|
safe_search = 2;
|
||||||
|
autocomplete_min = 2;
|
||||||
|
autocomplete = "duckduckgo";
|
||||||
|
ban_time_on_fail = 5;
|
||||||
|
max_ban_time_on_fail = 120;
|
||||||
|
formats = [
|
||||||
|
"html"
|
||||||
|
"json"
|
||||||
|
"rss"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
engines = lib.mapAttrsToList (name: value: { inherit name; } // value) {
|
||||||
|
"duckduckgo".disabled = true;
|
||||||
|
"brave".disabled = true;
|
||||||
|
"bing".disabled = false;
|
||||||
|
"google".disabled = false;
|
||||||
|
"mojeek".disabled = true;
|
||||||
|
"mwmbl".disabled = false;
|
||||||
|
"mwmbl".weight = 0.4;
|
||||||
|
"qwant".disabled = true;
|
||||||
|
"crowdview".disabled = false;
|
||||||
|
"crowdview".weight = 0.5;
|
||||||
|
"curlie".disabled = true;
|
||||||
|
"ddg definitions".disabled = false;
|
||||||
|
"ddg definitions".weight = 2;
|
||||||
|
"wikibooks".disabled = false;
|
||||||
|
"wikidata".disabled = true;
|
||||||
|
"wikiquote".disabled = true;
|
||||||
|
"wikisource".disabled = true;
|
||||||
|
"wikispecies".disabled = false;
|
||||||
|
"wikispecies".weight = 0.5;
|
||||||
|
"wikiversity".disabled = false;
|
||||||
|
"wikiversity".weight = 0.5;
|
||||||
|
"wikivoyage".disabled = false;
|
||||||
|
"wikivoyage".weight = 0.5;
|
||||||
|
"currency".disabled = true;
|
||||||
|
"dictzone".disabled = true;
|
||||||
|
"lingva".disabled = true;
|
||||||
|
"bing images".disabled = false;
|
||||||
|
"brave.images".disabled = true;
|
||||||
|
"duckduckgo images".disabled = true;
|
||||||
|
"google images".disabled = false;
|
||||||
|
"qwant images".disabled = true;
|
||||||
|
"1x".disabled = true;
|
||||||
|
"artic".disabled = false;
|
||||||
|
"deviantart".disabled = false;
|
||||||
|
"flickr".disabled = true;
|
||||||
|
"imgur".disabled = false;
|
||||||
|
"library of congress".disabled = false;
|
||||||
|
"material icons".disabled = true;
|
||||||
|
"material icons".weight = 0.2;
|
||||||
|
"openverse".disabled = false;
|
||||||
|
"pinterest".disabled = true;
|
||||||
|
"svgrepo".disabled = false;
|
||||||
|
"unsplash".disabled = false;
|
||||||
|
"wallhaven".disabled = false;
|
||||||
|
"wikicommons.images".disabled = false;
|
||||||
|
"yacy images".disabled = true;
|
||||||
|
"bing videos".disabled = false;
|
||||||
|
"brave.videos".disabled = true;
|
||||||
|
"duckduckgo videos".disabled = true;
|
||||||
|
"google videos".disabled = false;
|
||||||
|
"qwant videos".disabled = false;
|
||||||
|
"dailymotion".disabled = true;
|
||||||
|
"google play movies".disabled = true;
|
||||||
|
"invidious".disabled = true;
|
||||||
|
"odysee".disabled = true;
|
||||||
|
"peertube".disabled = false;
|
||||||
|
"piped".disabled = true;
|
||||||
|
"rumble".disabled = false;
|
||||||
|
"sepiasearch".disabled = false;
|
||||||
|
"vimeo".disabled = true;
|
||||||
|
"youtube".disabled = false;
|
||||||
|
"brave.news".disabled = true;
|
||||||
|
"google news".disabled = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
enabled_plugins = [
|
||||||
|
"Basic Calculator"
|
||||||
|
"Hash plugin"
|
||||||
|
"Tor check plugin"
|
||||||
|
"Open Access DOI rewrite"
|
||||||
|
"Hostnames plugin"
|
||||||
|
"Unit converter plugin"
|
||||||
|
"Tracker URL remover"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
{
|
{
|
||||||
nixpkgs.overlays = lib.mkIf (config.nixpkgs.hostPlatform.isLinux) [
|
nixpkgs.overlays = lib.mkIf (config.nixpkgs.hostPlatform.isLinux) [
|
||||||
(final: prev: {
|
(final: prev: {
|
||||||
wrapLibrewolf =
|
wrapFirefox =
|
||||||
browser: opts:
|
browser: opts:
|
||||||
let
|
let
|
||||||
extraPrefs = (opts.extraPrefs or "") + ''
|
extraPrefs = (opts.extraPrefs or "") + ''
|
||||||
|
|
@ -22,7 +22,7 @@
|
||||||
widevineCdmDir = "${final.widevine-cdm}/share/google/chrome/WidevineCdm";
|
widevineCdmDir = "${final.widevine-cdm}/share/google/chrome/WidevineCdm";
|
||||||
widevineOutDir = "$out/gmp-widevinecdm/system-installed";
|
widevineOutDir = "$out/gmp-widevinecdm/system-installed";
|
||||||
in
|
in
|
||||||
(prev.wrapLibrewolf browser (opts // { inherit extraPrefs; })).overrideAttrs (previousAttrs: {
|
(prev.wrapFirefox browser (opts // { inherit extraPrefs; })).overrideAttrs (previousAttrs: {
|
||||||
buildCommand = previousAttrs.buildCommand + ''
|
buildCommand = previousAttrs.buildCommand + ''
|
||||||
mkdir -p "${widevineOutDir}"
|
mkdir -p "${widevineOutDir}"
|
||||||
ln -s "${widevineCdmDir}/_platform_specific/linux_arm64/libwidevinecdm.so" "${widevineOutDir}/libwidevinecdm.so"
|
ln -s "${widevineCdmDir}/_platform_specific/linux_arm64/libwidevinecdm.so" "${widevineOutDir}/libwidevinecdm.so"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue