flake/modules/home/desktop/development.nix
2025-10-19 17:41:52 +00:00

95 lines
3.5 KiB
Nix

{
pkgs,
lib,
config,
...
}: {
options.mods.desktop.development.enable =
lib.mkEnableOption "enables gui development tools";
config = lib.mkIf config.mods.desktop.development.enable {
# home.packages = with pkgs; [ i3-swallow ];
programs.nyxt = {
enable = false;
config = ''
(in-package #:nyxt-user)
(defvar *my-search-engines*
(list
(make-instance 'search-engine
:name "Searx"
:shortcut "s"
#+nyxt-4 :control-url #+nyxt-3 :search-url
""https://search.muon.host/?q=~a";")
(make-instance 'search-engine
:name "nixpkgs"
:shortcut "np"
#+nyxt-4 :control-url #+nyxt-3 :search-url
"https://search.nixos.org/packages?channel=unstable&query=~a")))
(make-instance 'search-engine
:name "nix options"
:shortcut "np"
#+nyxt-4 :control-url #+nyxt-3 :search-url
"https://search.nixos.org/options?channel=unstable&query=~a")))
(make-instance 'search-engine
:name "home-manager"
:shortcut "hm"
#+nyxt-4 :control-url #+nyxt-3 :search-url
"https://home-manager-options.extranix.com/?release=master&query=~a")))
(define-configuration browser
((restore-session-on-startup-p nil)
(default-new-buffer-url (quri:uri "https://online.bonjourr.fr/"))
(external-editor-program ("alacritty -e hx")
#+nyxt-4
(search-engine-suggestions-p nil)
#+nyxt-4
(search-engines (append %slot-default% *my-search-engines*))
))
'';
};
programs.qutebrowser = {
enable = true;
settings = {
content.cookies.accept = "no-3rdparty";
url = {
default_page = "https://online.bonjourr.fr/";
start_pages = "https://online.bonjourr.fr/";
};
editor.command = ["alacritty" "-e" "hx" "{file}:{line}:{column}"];
};
searchEngines = {
DEFAULT = "https://search.muon.host/?q={}";
np = "https://search.nixos.org/packages?channel=unstable&query={}";
no = "https://search.nixos.org/options?channel=unstable&query={}";
hm = "https://home-manager-options.extranix.com/?release=master&query={}";
};
extraConfig = ''
host = c.content.blocking.hosts.lists.append
host("https://www.github.developerdan.com/hosts/lists/facebook-extended.txt")
abp = c.content.blocking.adblock.lists.append
abp("https://fanboy.co.nz/r/fanboy-ultimate.txt")
abp("https://fanboy.co.nz/fanboy-antifacebook.txt")
abp("https://fanboy.co.nz/fanboy-annoyance.txt")
abp("https://fanboy.co.nz/fanboy-cookiemonster.txt")
abp("https://easylist-downloads.adblockplus.org/antiadblockfilters.txt")
abp("https://easylist-downloads.adblockplus.org/abp-filters-anti-cv.txt")
abp("https://github.com/DandelionSprout/adfilt/raw/master/LegitimateURLShortener.txt")
abp("https://github.com/DandelionSprout/adfilt/raw/master/AnnoyancesList")
abp("https://github.com/DandelionSprout/adfilt/raw/master/SocialShareList.txt")
abp("https://github.com/DandelionSprout/adfilt/raw/master/ExtremelyCondensedList.txt")
'';
};
};
}