Add Noogle
Add both a bookmark and a search shortcut for noogle
This commit is contained in:
+144
-94
@@ -1,11 +1,14 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
cfg = config.greg.gui;
|
||||
|
||||
excludes = systems: opts: (
|
||||
if (builtins.all (x: pkgs.system != x) systems) then opts else [ ]
|
||||
);
|
||||
excludes = systems: opts: (if (builtins.all (x: pkgs.system != x) systems) then opts else [ ]);
|
||||
|
||||
# For now, we ignore this and don't install it
|
||||
ffPkgs = pkgs.firefox.override { cfg.enableGnomeExtensions = true; };
|
||||
@@ -17,105 +20,152 @@ in
|
||||
{
|
||||
options.greg.gui = lib.mkEnableOption "Enable GUI programs";
|
||||
|
||||
config = (lib.mkIf cfg {
|
||||
# These packages are Linux only
|
||||
home.packages = with pkgs; (excludes [ "x86_64-darwin" "aarch64-darwin" ]
|
||||
[
|
||||
cdrtools
|
||||
element-desktop
|
||||
freetube
|
||||
qpwgraph
|
||||
vlc
|
||||
x265
|
||||
]) ++
|
||||
config = (
|
||||
lib.mkIf cfg {
|
||||
# These packages are Linux only
|
||||
home.packages =
|
||||
with pkgs;
|
||||
(excludes
|
||||
[
|
||||
"x86_64-darwin"
|
||||
"aarch64-darwin"
|
||||
]
|
||||
[
|
||||
cdrtools
|
||||
element-desktop
|
||||
freetube
|
||||
qpwgraph
|
||||
vlc
|
||||
x265
|
||||
]
|
||||
)
|
||||
++
|
||||
|
||||
# x86_64-linux only
|
||||
(excludes [ "x86_64-darwin" "aarch64-darwin" "aarch64-linux" ]
|
||||
[
|
||||
bitwarden
|
||||
discord
|
||||
endeavour
|
||||
gnucash
|
||||
jellyfin-media-player
|
||||
#logseq
|
||||
nextcloud-client
|
||||
slack
|
||||
]) ++
|
||||
# x86_64-linux only
|
||||
(excludes
|
||||
[
|
||||
"x86_64-darwin"
|
||||
"aarch64-darwin"
|
||||
"aarch64-linux"
|
||||
]
|
||||
[
|
||||
bitwarden
|
||||
discord
|
||||
endeavour
|
||||
gnucash
|
||||
jellyfin-media-player
|
||||
#logseq
|
||||
nextcloud-client
|
||||
slack
|
||||
]
|
||||
)
|
||||
++
|
||||
|
||||
# Items that are not supported on ARM/Linux
|
||||
(excludes [ "aarch64-linux" ]
|
||||
[
|
||||
onlyoffice-bin
|
||||
synology-drive-client
|
||||
zoom-us
|
||||
]);
|
||||
# Items that are not supported on ARM/Linux
|
||||
(excludes [ "aarch64-linux" ] [
|
||||
onlyoffice-bin
|
||||
synology-drive-client
|
||||
zoom-us
|
||||
]);
|
||||
|
||||
programs.firefox = {
|
||||
enable = (! pkgs.stdenv.hostPlatform.isDarwin);
|
||||
package = ffPkgs;
|
||||
policies = {
|
||||
DisableAppUpdate = true;
|
||||
};
|
||||
profiles = {
|
||||
default = {
|
||||
bookmarks = import ./gui/bookmarks.nix;
|
||||
id = 0;
|
||||
isDefault = true;
|
||||
search = {
|
||||
default = "DuckDuckGo";
|
||||
force = true;
|
||||
engines = {
|
||||
Google.metaData.alias = "@g";
|
||||
"Nix Packages" = {
|
||||
urls = [{
|
||||
template = "https://search.nixos.org/packages";
|
||||
params = [
|
||||
{ name = "type"; value = "packages"; }
|
||||
{ name = "query"; value = "{searchTerms}"; }
|
||||
programs.firefox = {
|
||||
enable = (!pkgs.stdenv.hostPlatform.isDarwin);
|
||||
package = ffPkgs;
|
||||
policies = {
|
||||
DisableAppUpdate = true;
|
||||
};
|
||||
profiles = {
|
||||
default = {
|
||||
bookmarks = import ./gui/bookmarks.nix;
|
||||
id = 0;
|
||||
isDefault = true;
|
||||
search = {
|
||||
default = "DuckDuckGo";
|
||||
force = true;
|
||||
engines = {
|
||||
Google.metaData.alias = "@g";
|
||||
"Nix Packages" = {
|
||||
urls = [
|
||||
{
|
||||
template = "https://search.nixos.org/packages";
|
||||
params = [
|
||||
{
|
||||
name = "type";
|
||||
value = "packages";
|
||||
}
|
||||
{
|
||||
name = "query";
|
||||
value = "{searchTerms}";
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
}];
|
||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
definedAliases = [ "@np" ];
|
||||
};
|
||||
"Nix Options" = {
|
||||
urls = [{
|
||||
template = "https://search.nixos.org/options";
|
||||
params = [
|
||||
{ name = "type"; value = "packages"; }
|
||||
{ name = "query"; value = "{searchTerms}"; }
|
||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
definedAliases = [ "@np" ];
|
||||
};
|
||||
"Nix Options" = {
|
||||
urls = [
|
||||
{
|
||||
template = "https://search.nixos.org/options";
|
||||
params = [
|
||||
{
|
||||
name = "type";
|
||||
value = "packages";
|
||||
}
|
||||
{
|
||||
name = "query";
|
||||
value = "{searchTerms}";
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
}];
|
||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
definedAliases = [ "@no" ];
|
||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
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...
|
||||
programs.bash.sessionVariables = vars;
|
||||
programs.xonsh.sessionVariables = vars;
|
||||
});
|
||||
# This is supposed to be in support of Firefox, but I dunno...
|
||||
programs.bash.sessionVariables = vars;
|
||||
programs.xonsh.sessionVariables = vars;
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
@@ -130,6 +130,10 @@
|
||||
name = "Nixpkgs functions";
|
||||
url = "https://ryantm.github.io/nixpkgs/functions/library/strings/#sec-functions-library-strings";
|
||||
}
|
||||
{
|
||||
name = "Noogle";
|
||||
url = "https://noogle.dev/";
|
||||
}
|
||||
{
|
||||
name = "NUR search";
|
||||
url = "https://nur.nix-community.org/";
|
||||
|
||||
Reference in New Issue
Block a user