move to firefox

This commit is contained in:
Dmitriy Kholkin 2022-04-22 02:15:29 +03:00
parent 5e50e03ad1
commit be55a17137
6 changed files with 219 additions and 4 deletions

@ -14,6 +14,10 @@
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
arkenfox-userjs = {
url = "github:arkenfox/user.js";
flake = false;
};
base16.url = "github:alukardbf/base16-nix";
# base16.url = "/home/alukard/projects/base16-nix";
base16-horizon-scheme = {
@ -44,6 +48,7 @@
url = "github:mozilla/nixpkgs-mozilla";
flake = false;
};
nur.url = github:nix-community/NUR;
qbittorrent-ee = {
url = "github:c0re100/qBittorrent-Enhanced-Edition";
flake = false;

184
profiles/applications/firefox.nix Executable file

@ -0,0 +1,184 @@
{ config, pkgs, lib, ... }:
with lib;
let
thm = config.lib.base16.theme;
fonts = config.lib.base16.theme.fonts;
profileName = "alukard";
profilePath = ".mozilla/firefox/${profileName}";
mkUserJs = { prefs ? {}, extraPrefs ? "" }: ''
${extraPrefs}
${concatStrings (mapAttrsToList (name: value: ''
user_pref("${name}", ${builtins.toJSON value});
'') prefs)}
'';
firefox-kpoxa = pkgs.writeShellScriptBin "firefox-kpoxa" ''
${pkgs.firefox-wayland}/bin/firefox -profile /home/alukard/.mozilla/firefox/kpoxa
'';
in {
environment.sessionVariables = {
MOZ_USE_XINPUT2 = "1";
MOZ_DBUS_REMOTE = "1";
};
# programs.browserpass.enable = true;
defaultApplications.browser = {
cmd = "${pkgs.firefox-wayland}/bin/firefox";
desktop = "firefox";
};
home-manager.users.alukard = {
home.packages = [ firefox-kpoxa ];
# programs.browserpass = {
# enable = true;
# browsers = [ "firefox" ];
# };
wayland.windowManager.sway.config = {
window.commands = [
{
criteria = { title = "Firefox Sharing Indicator"; };
command = "floating enable";
}
{
criteria = { title = "Firefox Sharing Indicator"; };
command = "no_focus";
}
{
criteria = { title = "Firefox Sharing Indicator"; };
command = "resize set 0 0";
}
{
criteria = { title = "Firefox Sharing Indicator"; };
command = "move absolute position 10 10";
}
];
};
programs.firefox = {
enable = true;
package = pkgs.firefox-wayland;
profiles = {
alukard = {
id = 0;
userChrome = ''
#TabsToolbar {
visibility: collapse;
}
toolbar#nav-bar, nav-bar-customization-target {
background: ${thm.base00-hex} !important;
}
@-moz-document url("about:newtab") {
* { background-color: ${thm.base00-hex} !important; }
}
'';
userContent = ''
.scroll-styled-h, .scroll-styled-v, html {
scrollbar-color: #495460 rgba(255, 255, 255, .0);
scrollbar-width: thin;
}
'';
extraConfig = mkUserJs {
prefs = {
"network.http.referer.XOriginPolicy" = 0;
"signon.rememberSignons" = false;
"browser.quitShortcut.disabled" = true;
"general.autoScroll" = true;
"extensions.pocket.enabled" = false;
"browser.startup.page" = 1;
"browser.startup.homepage" = "https://startpage.ataraxiadev.com";
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"browser.search.suggest.enabled" = true;
"ui.context_menus.after_mouseup" = true;
"font.name.monospace.x-western" = "${fonts.mono.family}";
"font.name.sans-serif.x-western" = "${fonts.main.family}";
"font.name.serif.x-western" = "${fonts.serif.family}";
"browser.display.background_color" = thm.base00-hex;
"browser.display.foreground_color" = thm.base05-hex;
# "browser.display.document_color_use" = 2;
"browser.anchor_color" = thm.base0D-hex;
"browser.visited_color" = thm.base0C-hex;
"browser.display.use_document_fonts" = true;
"pdfjs.disabled" = true;
"media.eme.enabled" = true;
"experiments.activeExperiment" = false;
"experiments.enabled" = false;
"experiments.supported" = false;
"network.allow-experiments" = false;
};
extraPrefs = "${fileContents "${pkgs.arkenfox-userjs}/share/user-js/profiles/user.js"}";
};
};
kpoxa = {
id = 1;
userContent = ''
.scroll-styled-h, .scroll-styled-v, html {
scrollbar-color: #495460 rgba(255, 255, 255, .0);
scrollbar-width: thin;
}
'';
extraConfig = mkUserJs {
prefs = {
"network.http.referer.XOriginPolicy" = 0;
"signon.rememberSignons" = false;
"general.autoScroll" = true;
"extensions.pocket.enabled" = false;
"browser.startup.homepage" = "https://startpage.ataraxiadev.com";
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"browser.search.suggest.enabled" = true;
"browser.urlbar.suggest.searches" = true;
"ui.context_menus.after_mouseup" = true;
"keyword.enabled" = true;
"media.eme.enabled" = true;
"browser.startup.page" = 3;
"network.cookie.lifetimePolicy" = 0;
"browser.sessionstore.privacy_level" = 0;
"privacy.clearOnShutdown.history" = false;
"privacy.cpd.history" = false;
"font.name.monospace.x-western" = "${fonts.mono.family}";
"font.name.sans-serif.x-western" = "${fonts.main.family}";
"font.name.serif.x-western" = "${fonts.serif.family}";
"browser.display.background_color" = thm.base00-hex;
"browser.display.foreground_color" = thm.base05-hex;
"browser.anchor_color" = thm.base0D-hex;
"browser.visited_color" = thm.base0C-hex;
"browser.display.use_document_fonts" = true;
"experiments.activeExperiment" = false;
"experiments.enabled" = false;
"experiments.supported" = false;
"network.allow-experiments" = false;
};
extraPrefs = "${fileContents "${pkgs.arkenfox-userjs}/share/user-js/profiles/user.js"}";
};
};
};
# extensions = with pkgs.nur.repos.rycee.firefox-addons; [
# # add-custom-search-engine
# adsum-notabs
# # auto-tab-discard
# bitwarden
# # browserpass
# darkreader
# gesturefy
# libredirect
# markdownload
# refined-github
# # rust-search-extension
# search-by-image
# # search-engines-helper
# skip-redirect
# stylus
# tab-session-manager
# # tampermonkey
# terms-of-service-didnt-read
# ublock-origin
# ];
};
};
}

@ -1,8 +1,8 @@
{ pkgs, ... }: {
defaultApplications.browser = {
cmd = "${pkgs.vivaldi}/bin/vivaldi";
desktop = "vivaldi";
};
# defaultApplications.browser = {
# cmd = "${pkgs.vivaldi}/bin/vivaldi";
# desktop = "vivaldi";
# };
home-manager.users.alukard = {
home.packages = with pkgs; [

@ -15,12 +15,14 @@ with lib; {
nixpkgs.overlays = [
# inputs.nixpkgs-wayland.overlay
inputs.nix-alien.overlay
inputs.nur.overlay
roundcube-plugins
(self: super:
rec {
inherit inputs;
android-emulator = self.callPackage ./packages/android-emulator.nix { };
arkenfox-userjs = pkgs.callPackage ./packages/arkenfox-userjs.nix { arkenfox-repo = inputs.arkenfox-userjs; };
bibata-cursors = pkgs.callPackage ./packages/bibata-cursors.nix { };
ceserver = pkgs.callPackage ./packages/ceserver.nix { };
gamescope = pkgs.callPackage ./packages/gamescope.nix { };

@ -0,0 +1,23 @@
{ stdenv, lib, arkenfox-repo }:
stdenv.mkDerivation {
pname = "arknefox";
version = "master";
src = arkenfox-repo;
dontBuild = true;
installPhase = ''
mkdir -p $out/share/user-js/profiles
substituteInPlace prefsCleaner.sh \
--replace 'currdir=$(pwd)' 'currdir=$@'
cp {user.js,prefsCleaner.sh,updater.sh} $out/share/user-js/profiles
'';
meta = with lib; {
description = "Firefox privacy, security and anti-fingerprinting";
homepage = "https://github.com/arkenfox/user.js";
maintainers = [ danielphan2003 ];
platforms = platforms.all;
license = licenses.mit;
};
}

@ -17,6 +17,7 @@
alacritty
corectrl
firefox
gamemode
himalaya
kitty