Compare commits

...

8 commits

8 changed files with 38 additions and 130 deletions

View file

@ -24,6 +24,8 @@ local servers = {
["nil"] = { formatting = { command = { "nixfmt" } } },
},
},
zls = {},
}
vim.diagnostic.config {

View file

@ -75,6 +75,7 @@
"https://haskell-language-server.cachix.org"
"https://helix.cachix.org"
"https://cache.iog.io"
"https://ghostty.cachix.org"
];
extra-trusted-public-keys = [
"ghc-nix.cachix.org-1:ziC/I4BPqeA4VbtOFpFpu6D1t6ymFvRWke/lc2+qjcg="
@ -82,6 +83,7 @@
"haskell-language-server.cachix.org-1:juFfHrwkOxqIOZShtC4YC1uT1bBcq2RSvC7OMKx0Nz8="
"helix.cachix.org-1:ejp9KQpR1FBI2onstMQ34yogDm4OgU2ru6lIwPvuCVs="
"hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
"ghostty.cachix.org-1:QB389yTa6gTyneehvqG58y0WnHjQOqgnA+wBnpWWxns="
];
};
};

View file

@ -84,7 +84,6 @@
hardware.bluetooth.enable = true;
# Printing and auto-discovery of Wi-Fi printers
services.avahi = {
enable = true;

View file

@ -6,7 +6,7 @@ let
"kvm"
];
in
{pkgs, ...}:
{ pkgs, ... }:
{
nix.buildMachines = [
# NOTE: these hosts need to be put in the .ssh/config of root.

View file

@ -53,10 +53,14 @@ in
"browser.tabs.loadInBackground" = true;
"browser.ctrlTab.sortByRecentlyUsed" = false;
"layout.css.devPixelsPerPx" = 1.1;
# open links in new window
# this works a lot better with xmonad where I have a bunch of windows
"browser.link.open_newwindow" = 2;
"browser.startup.page" = 1;
"browser.link.open_newwindow" = 2; # open in new tab
"browser.translations.automaticallyPopup" = false;
"browser.tabs.closeWindowWithLastTab" = true;
"general.smoothScroll" = false; # makes me dizzy
"accessibility.typeaheadfind" = true; # type to find
"layout.css.always_underline_links" = true;
"media.videocontrols.picture-in-picture.enable-when-switching-tabs.enabled" = true;
# Sponsored crap
# Yes

View file

@ -20,7 +20,11 @@
in
lib.mkIf patdiffCfg.enable {
settings = {
git.paging.externalDiffCommand = "${lib.getExe' patdiffCfg.package "patdiff-git-wrapper"}";
git.paging = [
{
externalDiffCommand = "${lib.getExe' patdiffCfg.package "patdiff-git-wrapper"}";
}
];
};
};

View file

@ -1,53 +1,17 @@
{
pkgs,
config,
lib,
...
}:
let
inherit (pkgs) nur;
cfg = config.programs.zen-browser;
firefoxCfg = config.programs.firefox;
in
{
programs.zen-browser = {
# https://mozilla.github.io/policy-templates
# The following have more complex logic, keep them as policies and not profiles
policies = {
RequestedLocales = [
"fr-FR" # for fuck sake stop showing me translated version of French gov sites
"zh-TW"
"en-US"
];
policies = firefoxCfg.policies;
SearchEngines = {
Remove = [
"Google"
"Bing"
"DuckDuckGo"
"Qwant"
"eBay"
"Perplexity"
];
Default = "DuckDuckGo Lite";
Add = [
{
Name = "DuckDuckGo Lite";
URLTemplate = "https://lite.duckduckgo.com/lite/search?q={searchTerms}";
}
];
};
NoDefaultBookmarks = true;
DisplayMenuBar = "never";
DisplayBookmarksToolbar = "never";
DNSOverHTTPS = {
Enabled = false;
};
};
# https://searchfox.org/mozilla-central/source/browser/components/enterprisepolicies/Policies.sys.mjs
# Some policies can be rewritten to profiles configuration
#
# "locked" semantic from zen (doesn't seem to be doing anything, attempted for zen-twilight 1.18t)
# https://github.com/0xc000022070/zen-browser-flake/tree/main#preferences
#
@ -57,92 +21,21 @@ in
# - click the buttons
# - diff it
# diff .zen/default/prefs.js{.bk,}
profiles.default = {
settings = {
profiles.default = lib.mkMerge [
firefoxCfg.profiles.default
{
# Zen specific
settings = {
"zen.theme.content-element-separation" = 0; # Remove "borders" around window
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"browser.tabs.loadInBackground" = true;
"browser.ctrlTab.sortByRecentlyUsed" = false;
"layout.css.devPixelsPerPx" = 1.1;
"browser.startup.page" = 1;
"browser.translations.automaticallyPopup" = false;
"browser.tabs.closeWindowWithLastTab" = true;
"general.smoothScroll" = false;
# open links in new window
# this works a lot better with xmonad where I have a bunch of windows
"browser.link.open_newwindow" = 2;
# Sponsored crap
# Yes
"browser.newtabpage.activity-stream.showSearch" = true;
"browser.newtabpage.activity-stream.feeds.topsites" = true;
# No
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
"browser.newtabpage.activity-stream.feeds.section.highlights" = false;
"browser.newtabpage.activity-stream.feeds.system.topstories" = false;
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
"browser.newtabpage.activity-stream.showSponsored" = false;
# URL
# Yes
"browser.urlbar.suggest.quicksuggest.nonsponsored" = true;
# No
"browser.urlbar.suggest.quicksuggest.sponsored" = false;
# Pasword manager
"signon.rememberSignons" = false;
"services.passwordSavingEnabled" = false;
"pref.privacy.disable_button.view_passwords" = false;
# Hardware acceleration
"layers.acceleration.disabled" = false;
# Screenshot
"screenshots.browser.component.enabled" = true;
# Recommendations
"browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons" = false;
"browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features" = false;
"extensions.htmlaboutaddons.recommendations.enabled" = false; # Addons
# Onboarding
"browser.aboutwelcome.enabled" = false;
# AI crap
"browser.ml.chat.enabled" = false;
"browser.ml.chat.page" = false;
"browser.ml.chat.shortcuts" = false;
"browser.ml.chat.sidebar" = false;
# Prevent WebRTC leak
# https://mullvad.net/en/help/webrtc
"media.peerconnection.enabled" = false;
"zen.tabs.show-newtab-vertical" = false;
"zen.view.compact.toolbar-flash-popup" = true;
"zen.view.show-newtab-button-top" = false;
"zen.view.use-single-toolbar" = false;
"zen.tabs.ctrl-tab.ignore-pending-tabs" = true; # ctrl-tab ignore unloaded tabs
};
extensions.packages =
let
addons = nur.repos.rycee.firefox-addons;
in
[
addons.ublock-origin
addons.privacy-badger
addons.user-agent-string-switcher
/*
Here's to you who want to remove news feed eradicator because you find it annoying:
It is here to annoy you so it is less likely for you to be on the agency inversion path.
DO NOT REMOVE IT. I repeat, DO NOT REMOVE IT.
If you think it's annoying, go do some jump rope, sing, live.
*/
addons.news-feed-eradicator # did you read the comment above?
addons.multi-account-containers
}
];
};
};
xdg.mimeApps =
let

View file

@ -8,6 +8,10 @@
package = lib.mkDefault pkgs.nix;
settings = {
# it is impossible to anser in nix-direnv, so we force it to off.
# https://github.com/nix-community/nix-direnv/issues/678
accept-flake-config = lib.mkForce false;
# Try to have at least 10GB of space by default
min-free = lib.mkDefault (5 * 1024 * 1024 * 1024);
max-free = lib.mkDefault (10 * 1024 * 1024 * 1024);