Separate system from home-manager again
This commit is contained in:
@@ -0,0 +1,175 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
cfg = config.greg.gui;
|
||||
|
||||
excludes = systems: opts: (if (builtins.all (x: pkgs.system != x) systems) then opts else [ ]);
|
||||
|
||||
vars = {
|
||||
XDG_CURRENT_DESKTOP = "GNOME";
|
||||
};
|
||||
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
|
||||
onlyoffice-bin
|
||||
qpwgraph
|
||||
vlc
|
||||
x265
|
||||
]
|
||||
)
|
||||
++
|
||||
|
||||
# x86_64-linux only
|
||||
(excludes
|
||||
[
|
||||
"x86_64-darwin"
|
||||
"aarch64-darwin"
|
||||
"aarch64-linux"
|
||||
]
|
||||
[
|
||||
bitwarden
|
||||
endeavour
|
||||
jellyfin-media-player
|
||||
nextcloud-client
|
||||
slack
|
||||
(pkgs.zoom-us.overrideAttrs {
|
||||
version = "6.2.11.5069";
|
||||
src = pkgs.fetchurl {
|
||||
url = "https://zoom.us/client/6.2.11.5069/zoom_x86_64.pkg.tar.xz";
|
||||
hash = "sha256-k8T/lmfgAFxW1nwEyh61lagrlHP5geT2tA7e5j61+qw=";
|
||||
};
|
||||
})
|
||||
]
|
||||
)
|
||||
++
|
||||
|
||||
# Items that are not supported on ARM/Linux
|
||||
(excludes [ "aarch64-linux" ] [
|
||||
synology-drive-client
|
||||
]);
|
||||
|
||||
programs.firefox = {
|
||||
enable = true; #(!pkgs.stdenv.hostPlatform.isDarwin);
|
||||
package = pkgs.firefox-bin;
|
||||
policies = {
|
||||
DisableAppUpdate = true;
|
||||
};
|
||||
profiles = {
|
||||
default = {
|
||||
bookmarks = {
|
||||
force = true;
|
||||
settings = import ./gui/bookmarks.nix;
|
||||
};
|
||||
id = 0;
|
||||
isDefault = true;
|
||||
search = {
|
||||
default = "ddg";
|
||||
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 = [ "@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.packages = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||
bitwarden
|
||||
gsconnect
|
||||
foxyproxy-standard
|
||||
multi-account-containers
|
||||
octotree
|
||||
okta-browser-plugin
|
||||
refined-github
|
||||
sponsorblock
|
||||
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;
|
||||
}
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user