dotnix/apps/gui/firefox.nix

155 lines
4.3 KiB
Nix

{pkgs, ...}: {
programs.firefox = {
enable = true;
profiles.default = {
search = {
default = "Kagi";
privateDefault = "DuckDuckGo";
order = ["Kagi" "DuckDuckGo"];
force = true;
engines = {
"Kagi" = {
definedAliases = ["@k"];
urls = [
{
template = "https://kagi.com/search";
params = [
{
name = "q";
value = "{searchTerms}";
}
];
}
];
};
"DuckDuckGo" = {
definedAliases = ["@d"];
urls = [
{
template = "https://duckduckgo.com/";
params = [
{
name = "q";
value = "{searchTerms}";
}
];
}
];
};
};
};
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
bitwarden
clearurls
mailvelope
multi-account-containers
refined-github
ublock-origin
];
settings = {
"app.update.auto" = false;
"signon.rememberSignons" = false;
"browser.formfill.enable" = false;
"browser.tabs.firefox-view" = false;
"browser.aboutConfig.showWarning" = false;
"browser.bookmarks.addedImportButton" = false;
"extensions.pocket.enabled" = false;
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
"browser.newtabpage.pinned" = builtins.toJSON [
{url = "https://github.com/";}
{url = "https://git.jojodev.com/";}
{url = "https://git.jolheiser.com";}
];
"browser.fixup.domainwhitelist.go" = true; # golink
};
bookmarks = [
{
name = "Toolbar";
toolbar = true;
bookmarks = [
{
name = "Gitea";
bookmarks = [
{
name = "github";
tags = ["gitea"];
keyword = "go-gitea";
url = "https://github.com/go-gitea/gitea";
}
{
name = "jojodev";
tags = ["gitea"];
keyword = "jojodev";
url = "https://git.jojodev.com";
}
{
name = "gist";
tags = ["gitea" "gist"];
keyword = "gist";
url = "https://gist.jojodev.com";
}
{
name = "gitea";
tags = ["gitea"];
keyword = "gitea";
url = "https://gitea.com";
}
{
name = "try";
tags = ["gitea"];
keyword = "try";
url = "https://try.gitea.io";
}
];
}
{
name = "Tailnet";
bookmarks = [
{
name = "golink";
tags = ["tailscale"];
keyword = "go";
url = "http://go";
}
{
name = "jellyfin";
tags = ["jellyfin"];
keyword = "jellyfin";
url = "http://sencha:8096";
}
];
}
{
name = "ugit";
tags = ["git" "ugit"];
keyword = "ugit";
url = "https://git.jolheiser.com";
}
{
name = "git-pr";
tags = ["git" "pr"];
keyword = "git-pr";
url = "https://pr.jolheiser.com";
}
{
name = "todo";
tags = ["vikunja" "todo"];
keyword = "todo";
url = "https://todo.jolheiser.com";
}
];
}
# Not in the toolbar, but still usable via keyword/searching
{
name = "Go Playground";
tags = ["golang"];
keyword = "play";
url = "https://go.dev/play/";
}
];
};
};
}