Add Noogle

Add both a bookmark and a search shortcut for noogle
This commit is contained in:
Greg Hellings
2024-10-18 09:19:58 -05:00
parent c5090d69a2
commit cd0533332d
2 changed files with 148 additions and 94 deletions
+144 -94
View File
@@ -1,11 +1,14 @@
{ config, pkgs, lib, ... }: {
config,
pkgs,
lib,
...
}:
let let
cfg = config.greg.gui; cfg = config.greg.gui;
excludes = systems: opts: ( excludes = systems: opts: (if (builtins.all (x: pkgs.system != x) systems) then opts else [ ]);
if (builtins.all (x: pkgs.system != x) systems) then opts else [ ]
);
# For now, we ignore this and don't install it # For now, we ignore this and don't install it
ffPkgs = pkgs.firefox.override { cfg.enableGnomeExtensions = true; }; ffPkgs = pkgs.firefox.override { cfg.enableGnomeExtensions = true; };
@@ -17,105 +20,152 @@ in
{ {
options.greg.gui = lib.mkEnableOption "Enable GUI programs"; options.greg.gui = lib.mkEnableOption "Enable GUI programs";
config = (lib.mkIf cfg { config = (
# These packages are Linux only lib.mkIf cfg {
home.packages = with pkgs; (excludes [ "x86_64-darwin" "aarch64-darwin" ] # These packages are Linux only
[ home.packages =
cdrtools with pkgs;
element-desktop (excludes
freetube [
qpwgraph "x86_64-darwin"
vlc "aarch64-darwin"
x265 ]
]) ++ [
cdrtools
element-desktop
freetube
qpwgraph
vlc
x265
]
)
++
# x86_64-linux only # x86_64-linux only
(excludes [ "x86_64-darwin" "aarch64-darwin" "aarch64-linux" ] (excludes
[ [
bitwarden "x86_64-darwin"
discord "aarch64-darwin"
endeavour "aarch64-linux"
gnucash ]
jellyfin-media-player [
#logseq bitwarden
nextcloud-client discord
slack endeavour
]) ++ gnucash
jellyfin-media-player
#logseq
nextcloud-client
slack
]
)
++
# Items that are not supported on ARM/Linux # Items that are not supported on ARM/Linux
(excludes [ "aarch64-linux" ] (excludes [ "aarch64-linux" ] [
[ onlyoffice-bin
onlyoffice-bin synology-drive-client
synology-drive-client zoom-us
zoom-us ]);
]);
programs.firefox = { programs.firefox = {
enable = (! pkgs.stdenv.hostPlatform.isDarwin); enable = (!pkgs.stdenv.hostPlatform.isDarwin);
package = ffPkgs; package = ffPkgs;
policies = { policies = {
DisableAppUpdate = true; DisableAppUpdate = true;
}; };
profiles = { profiles = {
default = { default = {
bookmarks = import ./gui/bookmarks.nix; bookmarks = import ./gui/bookmarks.nix;
id = 0; id = 0;
isDefault = true; isDefault = true;
search = { search = {
default = "DuckDuckGo"; default = "DuckDuckGo";
force = true; force = true;
engines = { engines = {
Google.metaData.alias = "@g"; Google.metaData.alias = "@g";
"Nix Packages" = { "Nix Packages" = {
urls = [{ urls = [
template = "https://search.nixos.org/packages"; {
params = [ template = "https://search.nixos.org/packages";
{ name = "type"; value = "packages"; } params = [
{ name = "query"; value = "{searchTerms}"; } {
name = "type";
value = "packages";
}
{
name = "query";
value = "{searchTerms}";
}
];
}
]; ];
}]; icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; definedAliases = [ "@np" ];
definedAliases = [ "@np" ]; };
}; "Nix Options" = {
"Nix Options" = { urls = [
urls = [{ {
template = "https://search.nixos.org/options"; template = "https://search.nixos.org/options";
params = [ params = [
{ name = "type"; value = "packages"; } {
{ name = "query"; value = "{searchTerms}"; } name = "type";
value = "packages";
}
{
name = "query";
value = "{searchTerms}";
}
];
}
]; ];
}]; icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; definedAliases = [ "@no" ];
definedAliases = [ "@no" ]; };
"Noogle" = {
urls = [
{
template = "https://noogle.dev/q";
params = [
{
name = "term";
value = "{searchTerms}";
}
];
}
];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@nl" ];
};
}; };
}; };
settings = {
"app.update.auto" = false;
"browser.ctrlTab.sortByRecentlyUsed" = true;
"browser.startup.page" = 3;
"browser.startup.homepage" = "https://thehellings.com";
"doh-rollout.doorhanger-decision" = "UIDisabled";
"doh-rollout.doneFirstRun" = true;
"signon.rememberSignons" = false;
};
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
bitwarden
gsconnect
foxyproxy-standard
multi-account-containers
octotree
okta-browser-plugin
refined-github
tree-style-tab
ublock-origin
];
}; };
settings = {
"app.update.auto" = false;
"browser.ctrlTab.sortByRecentlyUsed" = true;
"browser.startup.page" = 3;
"browser.startup.homepage" = "https://thehellings.com";
"doh-rollout.doorhanger-decision" = "UIDisabled";
"doh-rollout.doneFirstRun" = true;
"signon.rememberSignons" = false;
};
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
bitwarden
gsconnect
foxyproxy-standard
multi-account-containers
octotree
okta-browser-plugin
refined-github
tree-style-tab
ublock-origin
];
}; };
}; };
};
# This is supposed to be in support of Firefox, but I dunno... # This is supposed to be in support of Firefox, but I dunno...
programs.bash.sessionVariables = vars; programs.bash.sessionVariables = vars;
programs.xonsh.sessionVariables = vars; programs.xonsh.sessionVariables = vars;
}); }
);
} }
+4
View File
@@ -130,6 +130,10 @@
name = "Nixpkgs functions"; name = "Nixpkgs functions";
url = "https://ryantm.github.io/nixpkgs/functions/library/strings/#sec-functions-library-strings"; url = "https://ryantm.github.io/nixpkgs/functions/library/strings/#sec-functions-library-strings";
} }
{
name = "Noogle";
url = "https://noogle.dev/";
}
{ {
name = "NUR search"; name = "NUR search";
url = "https://nur.nix-community.org/"; url = "https://nur.nix-community.org/";