switch to firefox

This commit is contained in:
Hadi
2024-11-17 19:52:52 +01:00
parent 69c0605202
commit 8a692431e4
3 changed files with 200 additions and 231 deletions

View File

@@ -1,236 +1,206 @@
{ pkgs, ... }: { { pkgs, config, ... }:
let
accent = "#${config.lib.stylix.colors.base0D}";
background = "#${config.lib.stylix.colors.base00}";
foreground = "#${config.lib.stylix.colors.base05}";
muted = "#${config.lib.stylix.colors.base03}";
settings = ''
{
"config": {
"title" : "Welcome Home",
"openLinksInNewTab": false,
"locale": "fr-FR",
"colors": {
"primary": "${accent}",
"background": "${background}",
"foreground": "${foreground}",
"muted": "#${muted}"
},
"folders": [
{
"name": "Bookmarks",
"links": [
{"title": "MyNixOs", "url": "https://mynixos.com", "icon": "󱄅"},
{"title": "Github", "url": "https://github.com", "icon": ""},
{"title": "Proton", "url": "https://mail.proton.me/u/0/inbox", "icon": ""},
{"title": "Cloudflare One", "url": "https://one.dash.cloudflare.com/", "icon": ""},
{"title": "Chat GPT", "url": "https://chat.openai.com/", "icon": "󰭹"},
{"title": "Nixvim", "url": "https://nix-community.github.io/nixvim/", "icon": ""},
{"title": "Hyprland Wiki", "url": "https://wiki.hyprland.org/", "icon": "󰖬"},
{"title": "Youtube", "url": "https://youtube.com", "icon": "󰗃"},
{"title": "Figma", "url": "https://figma.com", "icon": ""},
{"title": "Server", "url": "https://home.anotherhadi.com", "icon": ""}
]
},
{
"name": "Work",
"links": [
{"title": "Outlook", "url": "https://outlook.office.com/mail/", "icon": "󰴢"},
{"title": "Office", "url": "https://www.office.com/?auth=2", "icon": "󰏆"},
{"title": "Teams", "url": "https://teams.microsoft.com/_", "icon": "󰊻"}
]
}
]
}
}
'';
homepage = pkgs.buildNpmPackage {
pname = "homepage";
version = "0.0.0";
src = pkgs.fetchFromGitHub {
owner = "anotherhadi";
repo = "homepage";
rev = "b77d35ed3596eb451bd2ec78063d7cc6e73c773d";
hash = "sha256-j/40922kfAh6zqJ4IRYpr66YXNNYsxuXwZ0aiJFJea0=";
};
# npmDepsHash = lib.fakeHash;
npmDepsHash = "sha256-bG+CHTq2Rst3JMxsjAC81KhK+G7WwsTVD1eyP87g0z4=";
buildPhase = ''
npm install
cp ${
pkgs.writeText "src/routes/config.json" settings
} src/routes/config.json
npm run build
mkdir $out
mv build $out
'';
meta = {
description = "homepage";
homepage = "https://github.com/anotherhadi/homepage";
};
};
in {
stylix.targets.firefox.profileNames = [ "default" ];
programs.firefox = { programs.firefox = {
enable = true; enable = true;
package = pkgs.firefox-esr;
profiles = { policies = {
default = { DisableTelemetry = true;
extensions = with pkgs.nur.repos.rycee.firefox-addons; [ DisableFirefoxStudies = true;
ublock-origin DisablePocket = true;
vimium OverrideFirstRunPage = "";
sponsorblock OverridePostUpdatePage = "";
youtube-recommended-videos DontCheckDefaultBrowser = true;
scroll_anywhere DisableFirefoxAccounts = true;
newtab-adapter DisableAccounts = true;
plasma-integration "AutofillAddressEnabled" = false;
]; "AutofillCreditCardEnabled" = false;
}; };
profiles."default" = {
id = 0;
isDefault = true;
name = "default";
settings = { settings = {
"app.normandy.first_run" = false;
webgl.disabled = true; "browser.bookmarks.addedImportButton" = false;
"layers.acceleration.force-enabled" = true; "browser.toolbars.bookmarks.visibility" = "always";
toolkit.legacyUserProfileCustomizations.stylesheets = true; "browser.warnOnQuitShortcut" = false;
"datareporting.healthreport.uploadEnabled" = false;
"signon.rememberSignons" = false;
# ---------------------------------------------- "browser.startup.homepage" = "${homepage}/build/index.html";
# Browser "browser.search.region" = "FR";
# ---------------------------------------------- "browser.search.isUS" = false;
"distribution.searchplugins.defaultLocale" = "fr-FR";
browser.aboutConfig.showWarning = false; "general.useragent.locale" = "fr-FR";
"browser.bookmarks.showMobileBookmarks" = true;
browser.uidensity = 1; "browser.newtabpage.pinned" = [{
compactmode.show = true; title = "Homepage";
tabs.warnOnClose = false; url = "${homepage}/build/index.html";
}];
aboutwelcome.enabled = false;
bookmarks.restore_default_bookmarks = false;
contentblocking.category = "standard";
ctrlTab.sortByRecentlyUsed = true;
newtabpage = {
enabled = false;
activity-stream = {
showSearch = false;
newtabpage.activity-stream.showSponsored = false;
newtabpage.activity-stream.showSponsoredTopSites = false;
newtabpage.activity-stream.showWeather = false;
newtabpage.activity-stream.system.showSponsored = false;
}; };
}; bookmarks = [
# ----------------------------------------------
# Sensors
# ----------------------------------------------
device.sensors.enabled = false;
device.sensors.motion.enabled = false;
extensions.pocket.enabled = false;
geo.enabled = false;
# ----------------------------------------------
# Network
# ----------------------------------------------
network.trr.custom_uri = "https://dns.quad9.net/dns-query";
network.trr.uri = "https://dns.quad9.net/dns-query";
# ----------------------------------------------
# Privacy
# ----------------------------------------------
privacy = {
bounceTrackingProtection.hasMigratedUserActivationData = true;
donottrackheader.enabled = true;
fingerprintingProtection = true;
globalprivacycontrol.enabled = true;
globalprivacycontrol.was_ever_enabled = true;
resistFingerprinting = true;
};
# ----------------------------------------------
# Services
# ----------------------------------------------
services.sync.engine.addons = false;
services.sync.nextSync = 0;
signon.firefoxRelay.feature = "disabled";
signon.generation.enabled = "false";
};
userChrome = ''
/* Base color for the theme, dependent on whether it's a light theme or not */
@media (prefers-color-scheme: dark) {
:root {
--accent-color: #11111b;
}
}
@media (prefers-color-scheme: light) {
:root {
--accent-color: #dce0e8;
}
}
/*====== Aesthetics ======*/
#navigator-toolbox {
border-bottom: none !important;
}
#titlebar {
background: var(--accent-color) !important;
}
/* Sets the toolbar color */
toolbar#nav-bar {
background: var(--accent-color) !important;
box-shadow: none !important;
}
/* Sets the URL bar color */
#urlbar {
background: var(--accent-color) !important;
}
#urlbar-background {
background: var(--accent-color) !important;
border: none !important;
}
#urlbar-input-container {
border: none !important;
}
/*====== UI Settings ======*/
:root {
--navbarWidth: 500px;
/* Set width of navbar */
}
/* If the window is wider than 1000px, use flex layout */
@media (min-width: 1000px) {
#navigator-toolbox {
display: flex;
flex-direction: row;
flex-wrap: wrap;
}
/* Url bar */
#nav-bar {
order: 2;
width: var(--navbarWidth);
}
/* Tab bar */
#titlebar {
order: 1;
width: calc(100vw - var(--navbarWidth) - 1px);
}
/* Bookmarks bar */
#PersonalToolbar {
order: 3;
width: 100%;
}
/* Fix urlbar sometimes being misaligned */
:root[uidensity="compact"] #urlbar {
--urlbar-toolbar-height: 39.60px !important;
}
:root[uidensity="touch"] #urlbar {
--urlbar-toolbar-height: 49.00px !important;
}
}
/*====== Simplifying interface ======*/
/* Autohide back button when disabled */
#back-button,
#forward-button,
/* Remove UI elements */
#identity-box,
/* Site information */
#tracking-protection-icon-container,
/* Shield icon */
#page-action-buttons> :not(#urlbar-zoom-button, #star-button-box),
/* All url bar icons except for zoom level and bookmarks */
#urlbar-go-button,
/* Search URL magnifying glass */
#alltabs-button,
/* Menu to display all tabs at the end of tabs bar */
.titlebar-buttonbox-container
/* Minimize, maximize, and close buttons */
{ {
display: none !important; name = "Homepage";
url = "${homepage}/build/index.html";
} }
{
#nav-bar { name = "wikipedia";
box-shadow: none !important; tags = [ "wiki" ];
keyword = "wiki";
url =
"https://en.wikipedia.org/wiki/Special:Search?search=%s&go=Go";
} }
{
/* Remove "padding" left and right from tabs */ name = "kernel.org";
.titlebar-spacer { url = "https://www.kernel.org";
display: none !important;
} }
{
/* Fix URL bar overlapping elements */ name = "Nix sites";
#urlbar-container { toolbar = true;
min-width: none !important; bookmarks = [
{
name = "homepage";
url = "https://nixos.org/";
} }
{
/* Remove gap after pinned tabs */ name = "wiki";
#tabbrowser-tabs[haspinnedtabs]:not([positionpinnedtabs])>#tabbrowser-arrowscrollbox>.tabbrowser-tab[first-visible-unpinned-tab] { tags = [ "wiki" "nix" ];
margin-inline-start: 0 !important; url = "https://wiki.nixos.org/";
} }
];
/* Hide the hamburger menu */
#PanelUI-menu-button {
padding: 0px !important;
} }
];
#PanelUI-menu-button .toolbarbutton-icon { extensions = with pkgs.nur.repos.rycee.firefox-addons; [ privacy-badger ];
width: 0px !important; search = {
order = [ "google" "duckduckgo" "wikipedia" ];
engines = {
"Nix Packages" = {
urls = [{
template = "https://search.nixos.org/packages";
params = [
{
name = "type";
value = "packages";
} }
{
name = "query";
value = "{searchTerms}";
}
];
}];
#PanelUI-menu-button .toolbarbutton-badge-stack { icon =
padding: 0px !important; "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
}''; definedAliases = [ "@np" ];
};
"NixOS Wiki" = {
urls = [{
template =
"https://wiki.nixos.org/index.php?search={searchTerms}";
}];
iconUpdateURL = "https://wiki.nixos.org/favicon.png";
updateInterval = 24 * 60 * 60 * 1000; # every day
definedAliases = [ "@nw" ];
};
"Bing".metaData.hidden = true;
"Google".metaData.alias =
"@g"; # builtin engines only support specifying one additional alias
};
default = "DuckDuckGo";
}; };
}; };
# profiles = {
# default = {
# extensions = with pkgs.nur.repos.rycee.firefox-addons; [
# ublock-origin
# vimium
# sponsorblock
# youtube-recommended-videos
# scroll_anywhere
# newtab-adapter
# plasma-integration
# ];
# };
};
} }

View File

@@ -2,7 +2,6 @@
# My homepage is generated using https://github.com/anotherhadi/homepage # My homepage is generated using https://github.com/anotherhadi/homepage
{ pkgs, config, ... }: { pkgs, config, ... }:
let let
accent = "#${config.lib.stylix.colors.base0D}"; accent = "#${config.lib.stylix.colors.base0D}";
background = "#${config.lib.stylix.colors.base00}"; background = "#${config.lib.stylix.colors.base00}";
foreground = "#${config.lib.stylix.colors.base05}"; foreground = "#${config.lib.stylix.colors.base05}";

View File

@@ -23,10 +23,10 @@
"image/jpeg" = "imv.desktop"; "image/jpeg" = "imv.desktop";
"image/jpg" = "imv.desktop"; "image/jpg" = "imv.desktop";
"image/webp" = "imv.desktop"; "image/webp" = "imv.desktop";
"image/gif" = "org.qutebrowser.qutebrowser.desktop"; "image/gif" = "firefox.desktop";
"x-scheme-handler/http" = "org.qutebrowser.qutebrowser.desktop"; "x-scheme-handler/http" = "firefox.desktop";
"x-scheme-handler/https" = "org.qutebrowser.qutebrowser.desktop"; "x-scheme-handler/https" = "firefox.desktop";
"text/html" = "org.qutebrowser.qutebrowser.desktop"; "text/html" = "firefox.desktop";
"application/pdf" = "zathura.desktop"; "application/pdf" = "zathura.desktop";
}; };
}; };