97 lines
2.6 KiB
Nix
97 lines
2.6 KiB
Nix
{
|
|
self',
|
|
inputs,
|
|
osConfig,
|
|
lib,
|
|
...
|
|
}: let
|
|
inherit (lib) mkIf;
|
|
inherit (osConfig) modules;
|
|
sys = modules.system;
|
|
prg = sys.programs;
|
|
in {
|
|
imports = [inputs.schizofox.homeManagerModule];
|
|
config = mkIf prg.firefox.enable {
|
|
programs.schizofox = {
|
|
enable = true;
|
|
|
|
theme = {
|
|
font = "Inter";
|
|
colors = {
|
|
background-darker = "181825";
|
|
background = "1e1e2e";
|
|
foreground = "cdd6f4";
|
|
};
|
|
};
|
|
|
|
search = rec {
|
|
defaultSearchEngine = "Searxng";
|
|
removeEngines = ["Bing" "Amazon.com" "eBay" "Twitter" "Wikipedia" "LibRedirect" "DuckDuckGo"];
|
|
searxUrl = "https://search.notashelf.dev";
|
|
searxQuery = "${searxUrl}/search?q={searchTerms}&categories=general";
|
|
addEngines = [
|
|
{
|
|
Name = "Searxng";
|
|
Description = "Decentralized search engine";
|
|
Alias = "sx";
|
|
Method = "GET";
|
|
URLTemplate = "${searxQuery}";
|
|
}
|
|
];
|
|
};
|
|
|
|
security = {
|
|
sanitizeOnShutdown = false;
|
|
sandbox = true;
|
|
noSessionRestore = false;
|
|
userAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:106.0) Gecko/20100101 Firefox/106.0";
|
|
};
|
|
|
|
misc = {
|
|
drmFix = true;
|
|
disableWebgl = false;
|
|
startPageURL = "file://${self'.packages.schizofox-startpage.outPath}/index.html";
|
|
bookmarks = [
|
|
{
|
|
Title = "Nyx";
|
|
URL = "https://github.com/NotAShelf/nyx";
|
|
Placement = "toolbar";
|
|
Folder = "Github";
|
|
}
|
|
];
|
|
};
|
|
|
|
extensions = {
|
|
simplefox.enable = true;
|
|
darkreader.enable = true;
|
|
extraExtensions = let
|
|
mkUrl = name: "https://addons.mozilla.org/firefox/downloads/latest/${name}/latest.xpi";
|
|
extensions = [
|
|
{
|
|
id = "1018e4d6-728f-4b20-ad56-37578a4de76";
|
|
name = "flagfox";
|
|
}
|
|
{
|
|
id = "{c2c003ee-bd69-42a2-b0e9-6f34222cb046}";
|
|
name = "auto-tab-discard";
|
|
}
|
|
{
|
|
id = "{a4c4eda4-fb84-4a84-b4a1-f7c1cbf2a1ad}";
|
|
name = "refined-github-";
|
|
}
|
|
{
|
|
id = "sponsorBlocker@ajay.app";
|
|
name = "sponsorblock";
|
|
}
|
|
{
|
|
id = "{446900e4-71c2-419f-a6a7-df9c091e268b}";
|
|
name = "bitwarden-password-manager";
|
|
}
|
|
];
|
|
extraExtensions = builtins.foldl' (acc: ext: acc // {ext.id = {install_url = mkUrl ext.name;};}) {} extensions;
|
|
in
|
|
extraExtensions;
|
|
};
|
|
};
|
|
};
|
|
}
|