dotnix/apps/gui/firefox.nix

186 lines
5.0 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 = "tclip";
tags = [ "tailscale" ];
keyword = "paste";
url = "http://paste";
}
{
name = "ugit";
tags = [
"tailscale"
"git"
];
keyword = "git";
url = "http://git";
}
{
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/";
}
];
};
};
}