firefox config
This commit is contained in:
parent
4bbdb92401
commit
6a4bf43560
8 changed files with 468 additions and 59 deletions
|
|
@ -1,18 +1,13 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, firefox-addons, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
# Bootloader
|
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
# Hostname
|
|
||||||
networking.hostName = "navi";
|
networking.hostName = "navi";
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
# Timezone & locale
|
|
||||||
time.timeZone = "Asia/Jerusalem";
|
time.timeZone = "Asia/Jerusalem";
|
||||||
i18n.defaultLocale = "en_IL";
|
i18n.defaultLocale = "en_IL";
|
||||||
i18n.extraLocaleSettings = {
|
i18n.extraLocaleSettings = {
|
||||||
|
|
@ -26,8 +21,6 @@
|
||||||
LC_TELEPHONE = "he_IL.UTF-8";
|
LC_TELEPHONE = "he_IL.UTF-8";
|
||||||
LC_TIME = "he_IL.UTF-8";
|
LC_TIME = "he_IL.UTF-8";
|
||||||
};
|
};
|
||||||
|
|
||||||
# X11 + i3 (no GNOME)
|
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
enable = true;
|
enable = true;
|
||||||
windowManager.i3.enable = true;
|
windowManager.i3.enable = true;
|
||||||
|
|
@ -37,8 +30,6 @@
|
||||||
variant = "";
|
variant = "";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Sound
|
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
services.pulseaudio.enable = false;
|
services.pulseaudio.enable = false;
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
|
|
@ -47,26 +38,19 @@
|
||||||
alsa.support32Bit = true;
|
alsa.support32Bit = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
services.printing.enable = true;
|
services.printing.enable = true;
|
||||||
|
|
||||||
# User
|
|
||||||
users.users.laniakea = {
|
users.users.laniakea = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
description = "laniakea";
|
description = "laniakea";
|
||||||
extraGroups = [ "networkmanager" "wheel" ];
|
extraGroups = [ "networkmanager" "wheel" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
# home-manager as NixOS module
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
|
extraSpecialArgs = { inherit firefox-addons; };
|
||||||
users.laniakea = import ./navi/default.nix;
|
users.laniakea = import ./navi/default.nix;
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.firefox.enable = true;
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
environment.systemPackages = with pkgs; [ git ];
|
environment.systemPackages = with pkgs; [ git ];
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
26
navi/flake.lock
generated
26
navi/flake.lock
generated
|
|
@ -1,5 +1,27 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"firefox-addons": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"dir": "pkgs/firefox-addons",
|
||||||
|
"lastModified": 1775793785,
|
||||||
|
"narHash": "sha256-lLJpttuuF9sbmwM7GuNJ2/mKVqbim4Wla3rl/eMjAZo=",
|
||||||
|
"owner": "rycee",
|
||||||
|
"repo": "nur-expressions",
|
||||||
|
"rev": "65415051e904355712fc63e7a0bd14f20eddbe28",
|
||||||
|
"type": "gitlab"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"dir": "pkgs/firefox-addons",
|
||||||
|
"owner": "rycee",
|
||||||
|
"repo": "nur-expressions",
|
||||||
|
"type": "gitlab"
|
||||||
|
}
|
||||||
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -38,6 +60,7 @@
|
||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"firefox-addons": "firefox-addons",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
}
|
}
|
||||||
|
|
@ -46,6 +69,3 @@
|
||||||
"root": "root",
|
"root": "root",
|
||||||
"version": 7
|
"version": 7
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,11 +5,15 @@
|
||||||
url = "github:nix-community/home-manager";
|
url = "github:nix-community/home-manager";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
firefox-addons = {
|
||||||
|
url = "gitlab:rycee/nur-expressions?dir=pkgs/firefox-addons";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
};
|
||||||
outputs = { self, nixpkgs, home-manager, ... }: {
|
outputs = { self, nixpkgs, home-manager, firefox-addons, ... }: {
|
||||||
nixosConfigurations.navi = nixpkgs.lib.nixosSystem {
|
nixosConfigurations.navi = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
|
specialArgs = { inherit firefox-addons; };
|
||||||
modules = [
|
modules = [
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
|
|
|
||||||
20
navi/navi/bash.nix
Normal file
20
navi/navi/bash.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
programs.bash = {
|
||||||
|
enable = true;
|
||||||
|
initExtra = ''
|
||||||
|
eval "$(starship init bash)"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.starship = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
add_newline = true;
|
||||||
|
character = {
|
||||||
|
success_symbol = "[❯](bold green)";
|
||||||
|
error_symbol = "[❯](bold red)";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,16 +1,397 @@
|
||||||
{ pkgs, inputs, ... }:
|
let
|
||||||
|
profile = "default";
|
||||||
|
prf = ".mozilla/firefox/${profile}";
|
||||||
|
extstorage = "${prf}/browser-extension-data";
|
||||||
|
in
|
||||||
|
{ config, pkgs, lib, firefox-addons, ... }:
|
||||||
|
let
|
||||||
|
fa = firefox-addons.packages.${pkgs.system};
|
||||||
|
buildFirefoxXpiAddon = firefox-addons.lib.${pkgs.system}.buildFirefoxXpiAddon;
|
||||||
|
mozlz4 = n: x:
|
||||||
|
pkgs.runCommand "${n}.mozlz4" { buildInputs = [ pkgs.mozlz4a ]; } ''
|
||||||
|
mozlz4a ${builtins.toFile "${n}" (builtins.toJSON x)} $out
|
||||||
|
'';
|
||||||
|
in
|
||||||
{
|
{
|
||||||
programs.librewolf = {
|
home.file."${prf}/extension-preferences.json.tmp".source = pkgs.emptyFile;
|
||||||
|
home.file."${prf}/extension-settings.json.tmp".source = pkgs.emptyFile;
|
||||||
|
home.file."${prf}/search.json.mozlz4.tmp".source = pkgs.emptyFile;
|
||||||
|
home.file."${prf}/storage/default".source = pkgs.emptyDirectory;
|
||||||
|
home.file."${prf}/addonStartup.json.lz4".source = mozlz4 "addonStartup.json" {};
|
||||||
|
home.file."${prf}/addonStartup.json.lz4.tmp".source = pkgs.emptyFile;
|
||||||
|
|
||||||
|
home.file."${prf}/extension-preferences.json".text = builtins.toJSON {
|
||||||
|
"{3c078156-979c-498b-8990-85f7987dd929}" = {
|
||||||
|
origins = ["<all_urls>"];
|
||||||
|
permissions = ["proxy" "bookmarks" "tabHide" "clipboardWrite" "history" "downloads" "<all_urls>"];
|
||||||
|
};
|
||||||
|
"newtaboverride@agenedia.com" = {
|
||||||
|
origins = ["https://www.soeren-hentzschel.at/*"];
|
||||||
|
permissions = [];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home.file."${prf}/extension-settings.json".text = builtins.toJSON {
|
||||||
|
commands = {};
|
||||||
|
default_search = {};
|
||||||
|
homepageNotification = {};
|
||||||
|
newTabNotification = {
|
||||||
|
"newtaboverride@agenedia.com" = {
|
||||||
|
initialValue = false;
|
||||||
|
precedenceList = [
|
||||||
|
{
|
||||||
|
enabled = true;
|
||||||
|
id = "newtaboverride@agenedia.com";
|
||||||
|
installDate = 1000;
|
||||||
|
value = true;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
prefs = {
|
||||||
|
"network.networkPredictionEnabled" = {
|
||||||
|
initialValue = {};
|
||||||
|
precedenceList = [
|
||||||
|
{
|
||||||
|
enabled = true;
|
||||||
|
id = "uBlock0@raymondhill.net";
|
||||||
|
installDate = 1000;
|
||||||
|
value = false;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
"privacy.containers" = {
|
||||||
|
initialValue = {};
|
||||||
|
precedenceList = [
|
||||||
|
{
|
||||||
|
enabled = true;
|
||||||
|
id = "CanvasBlocker@kkapsner.de";
|
||||||
|
installDate = 1000;
|
||||||
|
value = "CanvasBlocker@kkapsner.de";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
"websites.hyperlinkAuditingEnabled" = {
|
||||||
|
initialValue = {};
|
||||||
|
precedenceList = [
|
||||||
|
{
|
||||||
|
enabled = true;
|
||||||
|
id = "uBlock0@raymondhill.net";
|
||||||
|
installDate = 1000;
|
||||||
|
value = false;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
tabHideNotification = {};
|
||||||
|
url_overrides = {
|
||||||
|
newTabURL = {
|
||||||
|
initialValue = "about:newtab";
|
||||||
|
precedenceList = [
|
||||||
|
{
|
||||||
|
enabled = true;
|
||||||
|
id = "newtaboverride@agenedia.com";
|
||||||
|
installDate = 1000;
|
||||||
|
value = "moz-extension://5ba70e66-a52e-41b3-9364-b4f0a14f3854/html/newtab.html";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
version = 3;
|
||||||
|
};
|
||||||
|
|
||||||
|
home.file."${extstorage}/redirector@einaregilsson.com/storage.js".text = builtins.toJSON {
|
||||||
|
redirects = map ({ includePattern, redirectUrl, description }: {
|
||||||
|
appliesTo = ["main_frame"];
|
||||||
|
inherit description;
|
||||||
|
disabled = false;
|
||||||
|
error = null;
|
||||||
|
exampleResult = "";
|
||||||
|
exampleUrl = "";
|
||||||
|
excludePattern = "";
|
||||||
|
grouped = false;
|
||||||
|
inherit includePattern;
|
||||||
|
patternDesc = "";
|
||||||
|
patternType = "W";
|
||||||
|
processMatches = "noProcessing";
|
||||||
|
inherit redirectUrl;
|
||||||
|
}) [
|
||||||
|
{
|
||||||
|
includePattern = "https://*youtube.com/watch?*v=*";
|
||||||
|
redirectUrl = "https://yewtu.be/watch?$2v=$3}";
|
||||||
|
description = "invidious";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
includePattern = "https://*youtube.com/results?*search_query=*";
|
||||||
|
redirectUrl = "https://yewtu.be/search?$2q=$3";
|
||||||
|
description = "invidious search";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
enableNotifications = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
home.file."${extstorage}/newtaboverride@agenedia.com/storage.js".text = builtins.toJSON {
|
||||||
|
url = "https://lobste.rs";
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# Enable WebGL, cookies and history
|
package = pkgs.firefox.override {
|
||||||
|
extraPolicies = {
|
||||||
|
CaptivePortal = false;
|
||||||
|
DisableFirefoxStudies = true;
|
||||||
|
DisablePocket = true;
|
||||||
|
DisableTelemetry = true;
|
||||||
|
DisableFirefoxAccounts = true;
|
||||||
|
FirefoxHome = {
|
||||||
|
Pocket = false;
|
||||||
|
Snippets = false;
|
||||||
|
};
|
||||||
|
UserMessaging = {
|
||||||
|
ExtensionRecommendations = false;
|
||||||
|
SkipOnboarding = true;
|
||||||
|
};
|
||||||
|
OverrideFirstRunPage = "";
|
||||||
|
Extensions.Install = map (x: x.src.outPath) config.programs.firefox.profiles."default".extensions.packages;
|
||||||
|
SearchEngines.Default = "DuckDuckGo";
|
||||||
|
ExtensionSettings = {
|
||||||
|
"google@search.mozilla.org" = { installation_mode = "blocked"; };
|
||||||
|
"amazondotcom@search.mozilla.org" = { installation_mode = "blocked"; };
|
||||||
|
"wikipedia@search.mozilla.org" = { installation_mode = "blocked"; };
|
||||||
|
"bing@search.mozilla.org" = { installation_mode = "blocked"; };
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
profiles.default = {
|
||||||
|
userChrome = ''
|
||||||
|
/* Catppuccin Mocha */
|
||||||
|
:root {
|
||||||
|
--ctp-base: #1e1e2e;
|
||||||
|
--ctp-mantle: #181825;
|
||||||
|
--ctp-crust: #11111b;
|
||||||
|
--ctp-surface0:#313244;
|
||||||
|
--ctp-surface1:#45475a;
|
||||||
|
--ctp-surface2:#585b70;
|
||||||
|
--ctp-overlay0:#6c7086;
|
||||||
|
--ctp-overlay1:#7f849c;
|
||||||
|
--ctp-text: #cdd6f4;
|
||||||
|
--ctp-subtext0:#a6adc8;
|
||||||
|
--ctp-lavender:#b4befe;
|
||||||
|
--ctp-blue: #89b4fa;
|
||||||
|
--ctp-mauve: #cba6f7;
|
||||||
|
--ctp-pink: #f38ba8;
|
||||||
|
--ctp-peach: #fab387;
|
||||||
|
--ctp-green: #a6e3a1;
|
||||||
|
--ctp-teal: #94e2d5;
|
||||||
|
}
|
||||||
|
|
||||||
|
#main-window,
|
||||||
|
#navigator-toolbox,
|
||||||
|
#TabsToolbar,
|
||||||
|
#nav-bar,
|
||||||
|
#PersonalToolbar {
|
||||||
|
background-color: var(--ctp-mantle) !important;
|
||||||
|
color: var(--ctp-text) !important;
|
||||||
|
border-color: var(--ctp-surface0) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabbrowser-tab .tab-background {
|
||||||
|
background-color: var(--ctp-surface0) !important;
|
||||||
|
border-radius: 6px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabbrowser-tab[selected] .tab-background {
|
||||||
|
background-color: var(--ctp-base) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabbrowser-tab .tab-label {
|
||||||
|
color: var(--ctp-subtext0) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabbrowser-tab[selected] .tab-label {
|
||||||
|
color: var(--ctp-text) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabbrowser-tab[selected] .tab-background::before {
|
||||||
|
content: "";
|
||||||
|
display: block;
|
||||||
|
height: 2px;
|
||||||
|
background: var(--ctp-mauve) !important;
|
||||||
|
border-radius: 2px 2px 0 0;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar-background {
|
||||||
|
background-color: var(--ctp-surface0) !important;
|
||||||
|
border-color: var(--ctp-surface1) !important;
|
||||||
|
border-radius: 8px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar[focused] #urlbar-background {
|
||||||
|
border-color: var(--ctp-mauve) !important;
|
||||||
|
box-shadow: 0 0 0 1px var(--ctp-mauve) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#urlbar-input {
|
||||||
|
color: var(--ctp-text) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
toolbar button,
|
||||||
|
toolbarbutton {
|
||||||
|
color: var(--ctp-text) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
toolbar button:hover,
|
||||||
|
toolbarbutton:hover {
|
||||||
|
background-color: var(--ctp-surface1) !important;
|
||||||
|
border-radius: 4px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#sidebar-box {
|
||||||
|
background-color: var(--ctp-mantle) !important;
|
||||||
|
color: var(--ctp-text) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
menupopup,
|
||||||
|
panel {
|
||||||
|
background-color: var(--ctp-surface0) !important;
|
||||||
|
color: var(--ctp-text) !important;
|
||||||
|
border-color: var(--ctp-surface1) !important;
|
||||||
|
border-radius: 8px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
menuitem:hover {
|
||||||
|
background-color: var(--ctp-surface1) !important;
|
||||||
|
color: var(--ctp-text) !important;
|
||||||
|
border-radius: 4px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#PersonalToolbar toolbarbutton {
|
||||||
|
color: var(--ctp-subtext0) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#PersonalToolbar toolbarbutton:hover {
|
||||||
|
color: var(--ctp-text) !important;
|
||||||
|
background-color: var(--ctp-surface0) !important;
|
||||||
|
border-radius: 4px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
scrollbar {
|
||||||
|
background-color: var(--ctp-mantle) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
scrollbar thumb {
|
||||||
|
background-color: var(--ctp-surface2) !important;
|
||||||
|
border-radius: 4px !important;
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
search = {
|
||||||
|
default = "DuckDuckGo";
|
||||||
|
force = true;
|
||||||
|
engines = {
|
||||||
|
"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"];
|
||||||
|
};
|
||||||
|
"Home Manager" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://mipmip.github.io/home-manager-option-search/";
|
||||||
|
params = [
|
||||||
|
{ name = "query"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
|
definedAliases = ["!hm"];
|
||||||
|
};
|
||||||
|
"Invidious" = {
|
||||||
|
urls = [{
|
||||||
|
template = "https://yewtu.be/search";
|
||||||
|
params = [
|
||||||
|
{ name = "q"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
iconUpdateURL = "https://invidious.io/favicon.ico";
|
||||||
|
definedAliases = ["!yt"];
|
||||||
|
};
|
||||||
|
"Cyberchef" = {
|
||||||
|
urls = [{
|
||||||
|
template = ''javascript:q="%s";location.href="https://cyberchef.org/#recipe=Magic(3,false,false,\'\')&input="+btoa(q)'';
|
||||||
|
params = [
|
||||||
|
{ name = "q"; value = "{searchTerms}"; }
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
iconUpdateURL = "https://cyberchef.org/favicon.ico";
|
||||||
|
definedAliases = ["!cc"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
extraConfig =
|
||||||
|
builtins.readFile (
|
||||||
|
builtins.fetchurl {
|
||||||
|
url = "https://raw.githubusercontent.com/arkenfox/user.js/master/user.js";
|
||||||
|
sha256 = "sha256:067bfw8zm6gi82a79cfb3y6hgqf5bsykx1k4z31nby320j4ch74g";
|
||||||
|
}
|
||||||
|
)
|
||||||
|
+ ''
|
||||||
|
user_pref('keyword.enabled', true);
|
||||||
|
user_pref("browser.startup.homepage", "https://lobste.rs");
|
||||||
|
user_pref("browser.startup.page", 1);
|
||||||
|
user_pref("privacy.resistFingerprinting", false);
|
||||||
|
user_pref("privacy.resistFingerprinting.letterboxing", false);
|
||||||
|
user_pref("browser.search.hiddenOneOffs","Google,Bing,Amazon.com,eBay,Twitter,Wikipedia (en)");
|
||||||
|
'';
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
"webgl.disabled" = false;
|
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
|
||||||
"privacy.resistFingerprinting" = true;
|
"browser.newtabpage.pinned" = [{ url = "https://lobste.rs"; }];
|
||||||
"privacy.clearOnShutdown.history" = true;
|
"extensions.activeThemeID" = "{e410fec2-1cbd-4098-9944-e21e708418af}";
|
||||||
"privacy.clearOnShutdown.cookies" = false;
|
"svg.context-properties.content.enabled" = true;
|
||||||
"network.cookie.lifetimePolicy" = 0;
|
"browser.toolbars.bookmarks.visibility" = "always";
|
||||||
|
"browser.uidensity" = 1;
|
||||||
|
"browser.aboutConfig.showWarning" = false;
|
||||||
|
"browser.shell.checkDefaultBrowser" = false;
|
||||||
|
"browser.newtabpage.activity-stream.improvesearch.topSiteSearchShortcuts" = false;
|
||||||
|
"browser.search.hiddenOneOffs" = "Google,Bing,Amazon.com,eBay,Twitter,Wikipedia (en)";
|
||||||
|
"browser.download.dir" = config.xdg.userDirs.download;
|
||||||
|
};
|
||||||
|
|
||||||
|
extensions.packages = [
|
||||||
|
fa.ublock-origin
|
||||||
|
fa.clearurls
|
||||||
|
fa.privacy-possum
|
||||||
|
fa.skip-redirect
|
||||||
|
fa.canvasblocker
|
||||||
|
fa.darkreader
|
||||||
|
fa.vimium
|
||||||
|
(buildFirefoxXpiAddon {
|
||||||
|
pname = "sidebery";
|
||||||
|
version = "v5.0.0rc4";
|
||||||
|
addonId = "{3c078156-979c-498b-8990-85f7987dd929}";
|
||||||
|
url = "https://github.com/mbnuqw/sidebery/releases/download/v5.0.0rc4/sidebery-5.0.0rc4.xpi";
|
||||||
|
sha256 = "sha256-YsH9yYfGefClRS93dMV/eLMFuoPFKPrx0NL2hIv4dEk=";
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/mbnuqw/sidebery";
|
||||||
|
description = "Tabs tree and bookmarks in sidebar with advanced containers configuration.";
|
||||||
|
license = licenses.mit;
|
||||||
|
platforms = platforms.all;
|
||||||
|
};
|
||||||
|
})
|
||||||
|
fa.redirector
|
||||||
|
fa.kristofferhagen-nord-theme
|
||||||
|
fa.new-tab-override
|
||||||
|
fa.snowflake
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,35 +12,35 @@
|
||||||
window_gap = 2;
|
window_gap = 2;
|
||||||
};
|
};
|
||||||
rules."Zathura".state = "tiled";
|
rules."Zathura".state = "tiled";
|
||||||
|
startupPrograms = [ "feh --bg-fill ~/Pictures/wp.png" ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
services.sxhkd = {
|
services.sxhkd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
keybindings = {
|
keybindings = {
|
||||||
"super + d" = "rofi -show drun";
|
"super + d" = "rofi -show drun";
|
||||||
"super + Return" = "alacritty";
|
"super + Return" = "alacritty";
|
||||||
"super + w" = "bspc node -c";
|
"super + w" = "bspc node -c";
|
||||||
"super + 1" = "bspc desktop -f '1'";
|
"super + 1" = "bspc desktop -f '^1'";
|
||||||
"super + 2" = "bspc desktop -f '2'";
|
"super + 2" = "bspc desktop -f '^2'";
|
||||||
"super + 3" = "bspc desktop -f '3'";
|
"super + 3" = "bspc desktop -f '^3'";
|
||||||
"super + 4" = "bspc desktop -f '4'";
|
"super + 4" = "bspc desktop -f '^4'";
|
||||||
"super + 5" = "bspc desktop -f '5'";
|
"super + 5" = "bspc desktop -f '^5'";
|
||||||
"super + 6" = "bspc desktop -f '6'";
|
"super + 6" = "bspc desktop -f '^6'";
|
||||||
"super + 7" = "bspc desktop -f '7'";
|
"super + 7" = "bspc desktop -f '^7'";
|
||||||
"super + 8" = "bspc desktop -f '8'";
|
"super + 8" = "bspc desktop -f '^8'";
|
||||||
"super + 9" = "bspc desktop -f '9'";
|
"super + 9" = "bspc desktop -f '^9'";
|
||||||
"super + 0" = "bspc desktop -f '10'";
|
"super + 0" = "bspc desktop -f '^10'";
|
||||||
"super + shift + 1" = "bspc node -d '1'";
|
"super + shift + 1" = "bspc node -d '^1'";
|
||||||
"super + shift + 2" = "bspc node -d '2'";
|
"super + shift + 2" = "bspc node -d '^2'";
|
||||||
"super + shift + 3" = "bspc node -d '3'";
|
"super + shift + 3" = "bspc node -d '^3'";
|
||||||
"super + shift + 4" = "bspc node -d '4'";
|
"super + shift + 4" = "bspc node -d '^4'";
|
||||||
"super + shift + 5" = "bspc node -d '5'";
|
"super + shift + 5" = "bspc node -d '^5'";
|
||||||
"super + shift + 6" = "bspc node -d '6'";
|
"super + shift + 6" = "bspc node -d '^6'";
|
||||||
"super + shift + 7" = "bspc node -d '7'";
|
"super + shift + 7" = "bspc node -d '^7'";
|
||||||
"super + shift + 8" = "bspc node -d '8'";
|
"super + shift + 8" = "bspc node -d '^8'";
|
||||||
"super + shift + 9" = "bspc node -d '9'";
|
"super + shift + 9" = "bspc node -d '^9'";
|
||||||
"super + shift + 0" = "bspc node -d '10'";
|
"super + shift + 0" = "bspc node -d '^10'";
|
||||||
"super + h" = "bspc node -f west";
|
"super + h" = "bspc node -f west";
|
||||||
"super + j" = "bspc node -f south";
|
"super + j" = "bspc node -f south";
|
||||||
"super + k" = "bspc node -f north";
|
"super + k" = "bspc node -f north";
|
||||||
|
|
@ -52,6 +52,5 @@
|
||||||
"super + shift + r" = "bspc wm -r";
|
"super + shift + r" = "bspc wm -r";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
home.packages = with pkgs; [ rofi feh ];
|
||||||
home.packages = with pkgs; [ rofi ];
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@
|
||||||
./git.nix
|
./git.nix
|
||||||
./launcher.nix
|
./launcher.nix
|
||||||
./keyboard.nix
|
./keyboard.nix
|
||||||
|
./bash.nix
|
||||||
./bspwm.nix
|
./bspwm.nix
|
||||||
./notifications.nix
|
./notifications.nix
|
||||||
./polybar.nix
|
./polybar.nix
|
||||||
|
|
|
||||||
|
|
@ -80,7 +80,7 @@
|
||||||
"XF86AudioMicMute" = "pulsemixer --id source-42 --toggle-mute";
|
"XF86AudioMicMute" = "pulsemixer --id source-42 --toggle-mute";
|
||||||
|
|
||||||
# Launch programs
|
# Launch programs
|
||||||
"alt + 1" = "librewolf";
|
"alt + 1" = "firefox";
|
||||||
|
|
||||||
"alt + 2" = "Discord";
|
"alt + 2" = "Discord";
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue