more progress on custom options config
This commit is contained in:
26 files changed
+900
-561
No files matched your search
@@ -1,25 +1,28 @@
|
||||
{ inputs, self, ... }: {
|
||||
flake.homeModules.equibop = { pkgs, lib, osConfig, ... }: {
|
||||
programs.equibop.enable = true;
|
||||
flake.nixosModules.graphics = { pkgs, lib, config, ... }: {
|
||||
options.features.applications.gui.equibop.enable = lib.mkEnableOption "equibop";
|
||||
};
|
||||
|
||||
home.activation = {
|
||||
linkEquibopConfig = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
||||
#!/bin/bash
|
||||
if [ -f /home/grey/.config/equibop/settings.json ]; then
|
||||
rm /home/grey/.config/equibop/settings.json
|
||||
fi
|
||||
ln -s ${osConfig.info.rootPath}/dotfiles/${osConfig.networking.hostName}/equibop/settings.json /home/grey/.config/equibop/settings.json
|
||||
flake.homeModules.graphics = { pkgs, lib, osConfig, ... }: {
|
||||
config = lib.mkIf (osConfig.features.applications.gui.equibop.enable) {
|
||||
programs.equibop.enable = true;
|
||||
|
||||
if [ -f /home/grey/.config/equibop/settings/settings.json ]; then
|
||||
rm /home/grey/.config/equibop/settings/settings.json
|
||||
fi
|
||||
ln -s ${osConfig.info.rootPath}/dotfiles/${osConfig.networking.hostName}/equibop/equicord-settings.json /home/grey/.config/equibop/settings/settings.json
|
||||
home.activation = {
|
||||
linkEquibopConfigSettings = lib.hm.dag.entryAfter ["writeBoundary"] (osConfig.helpers.mkSymlinkActivationScript {
|
||||
target = ".config/equibop/settings.json";
|
||||
source = "dotfiles/${osConfig.info.hostName}/equibop/settings.json";
|
||||
});
|
||||
|
||||
if [ -f /home/grey/.config/equibop/settings/quickCss.css ]; then
|
||||
rm /home/grey/.config/equibop/settings/quickCss.css
|
||||
fi
|
||||
ln -s ${osConfig.info.rootPath}/dotfiles/${osConfig.networking.hostName}/equibop/quickCss.css /home/grey/.config/equibop/settings/quickCss.css
|
||||
'';
|
||||
linkEquibopConfigEquicordSettings = lib.hm.dag.entryAfter ["writeBoundary"] (osConfig.helpers.mkSymlinkActivationScript {
|
||||
target = ".config/equibop/settings/settings.json";
|
||||
source = "dotfiles/${osConfig.info.hostName}/equibop/equicord-settings.json";
|
||||
});
|
||||
|
||||
linkEquibopConfigQuickCss = lib.hm.dag.entryAfter ["writeBoundary"] (osConfig.helpers.mkSymlinkActivationScript {
|
||||
target = ".config/equibop/settings/quickCss.css";
|
||||
source = "dotfiles/${osConfig.info.hostName}/equibop/quickCss.css";
|
||||
});
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,207 +1,216 @@
|
||||
{ inputs, self, ... }: {
|
||||
flake.homeModules.floorp = { pkgs, ... }:
|
||||
let
|
||||
firefox-addons = with pkgs; inputs.firefox-addons.packages.${system};
|
||||
in {
|
||||
programs.floorp = {
|
||||
enable = true;
|
||||
nativeMessagingHosts = [
|
||||
pkgs.firefoxpwa
|
||||
];
|
||||
policies = {
|
||||
AIControls.Default = {
|
||||
Value = "blocked";
|
||||
Locked = true;
|
||||
};
|
||||
AutofillAddressEnabled = false;
|
||||
AutofillCreditCardEnabled = false;
|
||||
DisableAppUpdate = true;
|
||||
DisableFeedbackCommands = true;
|
||||
DisableFirefoxStudies = true;
|
||||
DisablePocket = true;
|
||||
DisableTelemetry = true;
|
||||
NoDefaultBookmarks = true;
|
||||
EnableTrackingProtection = {
|
||||
Value = true;
|
||||
Locked = true;
|
||||
Cryptomining = true;
|
||||
Fingerprinting = true;
|
||||
};
|
||||
};
|
||||
profiles.default = {
|
||||
extensions = {
|
||||
packages = with firefox-addons; [
|
||||
adnauseam
|
||||
bitwarden
|
||||
indie-wiki-buddy
|
||||
pwas-for-firefox
|
||||
gnome-shell-integration
|
||||
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
||||
options.features.applications.gui.floorp.enable = lib.mkEnableOption "floorp";
|
||||
};
|
||||
|
||||
flake.homeModules.graphics = { pkgs, lib, osConfig, ... }: {
|
||||
config = lib.mkIf (osConfig.features.applications.gui.floorp.enable) (
|
||||
let
|
||||
firefox-addons = with pkgs; inputs.firefox-addons.packages.${system};
|
||||
in {
|
||||
stylix.targets.floorp.profileNames = lib.mkIf (osConfig.features.nixos.stylix.enable) [ "default" ];
|
||||
|
||||
programs.floorp = {
|
||||
enable = true;
|
||||
nativeMessagingHosts = [
|
||||
pkgs.firefoxpwa
|
||||
];
|
||||
policies = {
|
||||
AIControls.Default = {
|
||||
Value = "blocked";
|
||||
Locked = true;
|
||||
};
|
||||
AutofillAddressEnabled = false;
|
||||
AutofillCreditCardEnabled = false;
|
||||
DisableAppUpdate = true;
|
||||
DisableFeedbackCommands = true;
|
||||
DisableFirefoxStudies = true;
|
||||
DisablePocket = true;
|
||||
DisableTelemetry = true;
|
||||
NoDefaultBookmarks = true;
|
||||
EnableTrackingProtection = {
|
||||
Value = true;
|
||||
Locked = true;
|
||||
Cryptomining = true;
|
||||
Fingerprinting = true;
|
||||
};
|
||||
};
|
||||
profiles.default = {
|
||||
extensions = {
|
||||
packages = with firefox-addons; [
|
||||
adnauseam
|
||||
bitwarden
|
||||
indie-wiki-buddy
|
||||
pwas-for-firefox
|
||||
gnome-shell-integration
|
||||
];
|
||||
|
||||
settings = {
|
||||
${firefox-addons.adnauseam.addonId} = {
|
||||
force = true;
|
||||
settings = {
|
||||
"firstInstall" = false;
|
||||
"hidingAds" = true;
|
||||
"clickingAds" = true;
|
||||
"blockingMalware" = true;
|
||||
"disableClickingForDNT" = true;
|
||||
"clickProbability" = 0.75;
|
||||
selectedFilterLists = [
|
||||
"user-filters"
|
||||
"adnauseam-filters"
|
||||
"eff-dnt-whitelist"
|
||||
"ublock-filters"
|
||||
"ublock-badware"
|
||||
"ublock-privacy"
|
||||
"ublock-quick-fixes"
|
||||
"ublock-unbreak"
|
||||
"easylist"
|
||||
"easyprivacy"
|
||||
"urlhaus-1"
|
||||
"fanboy-cookiemonster"
|
||||
"ublock-cookies-easylist"
|
||||
"adguard-cookies"
|
||||
"ublock-cookies-adguard"
|
||||
"fanboy-ai-suggestions"
|
||||
"easylist-chat"
|
||||
"easylist-newsletters"
|
||||
"easylist-notifications"
|
||||
"easylist-annoyances"
|
||||
"adguard-mobile-app-banners"
|
||||
"adguard-other-annoyances"
|
||||
"adguard-popup-overlays"
|
||||
"adguard-widgets"
|
||||
"ublock-annoyances"
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
settings = {
|
||||
"signon.rememberSignons" = false;
|
||||
"signon.autofillForms" = false;
|
||||
"floorp.panelSidebar.enabled" = false;
|
||||
"floorp.workspaces.enabled" = false;
|
||||
"browser.toolbars.bookmarks.visibility" = "newtab";
|
||||
"floorp.browser.welcome.page.shown" = true;
|
||||
"browser.newtabpage.activity-stream.feeds.topsites" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.adsfeed" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.telemetry" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.weatherfeed" = false;
|
||||
"browser.newtabpage.activity-stream.newtabWallpapers.user.enabled" = true;
|
||||
"browser.newtabpage.activity-stream.widgets.enabled" = false;
|
||||
"browser.newtabpage.activity-stream.discoverystream.enabled" = false;
|
||||
"browser.newtabpage.activity-stream.newtabWallpapers.wallpaper" = "suspension-bridge";
|
||||
"floorp.design.configs" = {
|
||||
globalConfigs = {
|
||||
userInterface = "proton";
|
||||
uiCustomization = {
|
||||
qrCode.disableButton = true;
|
||||
disableFloorpStart = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
"ui.key.menuAccessKeyFocuses" = false;
|
||||
"floorp.keyboardshortcut.enabled" = true;
|
||||
"floorp.keyboardshortcut.config" = {
|
||||
enabled = true;
|
||||
shortcuts = {
|
||||
gecko-close-tab = {
|
||||
modifiers = {
|
||||
alt = true;
|
||||
ctrl = false;
|
||||
meta = false;
|
||||
shift = false;
|
||||
${firefox-addons.adnauseam.addonId} = {
|
||||
force = true;
|
||||
settings = {
|
||||
"firstInstall" = false;
|
||||
"hidingAds" = true;
|
||||
"clickingAds" = true;
|
||||
"blockingMalware" = true;
|
||||
"disableClickingForDNT" = true;
|
||||
"clickProbability" = 0.75;
|
||||
selectedFilterLists = [
|
||||
"user-filters"
|
||||
"adnauseam-filters"
|
||||
"eff-dnt-whitelist"
|
||||
"ublock-filters"
|
||||
"ublock-badware"
|
||||
"ublock-privacy"
|
||||
"ublock-quick-fixes"
|
||||
"ublock-unbreak"
|
||||
"easylist"
|
||||
"easyprivacy"
|
||||
"urlhaus-1"
|
||||
"fanboy-cookiemonster"
|
||||
"ublock-cookies-easylist"
|
||||
"adguard-cookies"
|
||||
"ublock-cookies-adguard"
|
||||
"fanboy-ai-suggestions"
|
||||
"easylist-chat"
|
||||
"easylist-newsletters"
|
||||
"easylist-notifications"
|
||||
"easylist-annoyances"
|
||||
"adguard-mobile-app-banners"
|
||||
"adguard-other-annoyances"
|
||||
"adguard-popup-overlays"
|
||||
"adguard-widgets"
|
||||
"ublock-annoyances"
|
||||
];
|
||||
};
|
||||
};
|
||||
key = "Q";
|
||||
action = "gecko-close-tab";
|
||||
};
|
||||
gecko-open-new-tab = {
|
||||
modifiers = {
|
||||
alt = true;
|
||||
ctrl = false;
|
||||
meta = false;
|
||||
shift = false;
|
||||
};
|
||||
key = "Enter";
|
||||
action = "gecko-open-new-tab";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
search = {
|
||||
force = true;
|
||||
default = "ddg-noai";
|
||||
engines = {
|
||||
ddg-noai = {
|
||||
name = "DuckDuckGo No-AI";
|
||||
urls = [
|
||||
{
|
||||
template = "https://noai.duckduckgo.com/?q={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://duckduckgo.com/favicon.ico";
|
||||
definedAliases = ["@noai"];
|
||||
|
||||
settings = {
|
||||
"signon.rememberSignons" = false;
|
||||
"signon.autofillForms" = false;
|
||||
"floorp.panelSidebar.enabled" = false;
|
||||
"floorp.workspaces.enabled" = false;
|
||||
"browser.toolbars.bookmarks.visibility" = "newtab";
|
||||
"floorp.browser.welcome.page.shown" = true;
|
||||
"browser.newtabpage.activity-stream.feeds.topsites" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.adsfeed" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.telemetry" = false;
|
||||
"browser.newtabpage.activity-stream.feeds.weatherfeed" = false;
|
||||
"browser.newtabpage.activity-stream.newtabWallpapers.user.enabled" = true;
|
||||
"browser.newtabpage.activity-stream.widgets.enabled" = false;
|
||||
"browser.newtabpage.activity-stream.discoverystream.enabled" = false;
|
||||
"browser.newtabpage.activity-stream.newtabWallpapers.wallpaper" = "suspension-bridge";
|
||||
"floorp.design.configs" = {
|
||||
globalConfigs = {
|
||||
userInterface = "proton";
|
||||
uiCustomization = {
|
||||
qrCode.disableButton = true;
|
||||
disableFloorpStart = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
"ui.key.menuAccessKeyFocuses" = false;
|
||||
"floorp.keyboardshortcut.enabled" = true;
|
||||
"floorp.keyboardshortcut.config" = {
|
||||
enabled = true;
|
||||
shortcuts = {
|
||||
gecko-close-tab = {
|
||||
modifiers = {
|
||||
alt = true;
|
||||
ctrl = false;
|
||||
meta = false;
|
||||
shift = false;
|
||||
};
|
||||
key = "Q";
|
||||
action = "gecko-close-tab";
|
||||
};
|
||||
gecko-open-new-tab = {
|
||||
modifiers = {
|
||||
alt = true;
|
||||
ctrl = false;
|
||||
meta = false;
|
||||
shift = false;
|
||||
};
|
||||
key = "Enter";
|
||||
action = "gecko-open-new-tab";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
nixpkgs = {
|
||||
name = "nixpkgs packages";
|
||||
urls = [
|
||||
{
|
||||
template = "https://search.nixos.org/packages?query={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://wiki.nixos.org/favicon.ico";
|
||||
definedAliases = ["@np"];
|
||||
};
|
||||
nixos-options = {
|
||||
name = "NixOS options";
|
||||
urls = [
|
||||
{
|
||||
template = "https://search.nixos.org/options?query={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://wiki.nixos.org/favicon.ico";
|
||||
definedAliases = ["@no"];
|
||||
};
|
||||
nixos-wiki = {
|
||||
name = "NixOS Wiki";
|
||||
urls = [
|
||||
{
|
||||
template = "https://wiki.nixos.org/w/index.php?search={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://wiki.nixos.org/favicon.ico";
|
||||
definedAliases = ["@nw"];
|
||||
};
|
||||
noogle = {
|
||||
name = "Noogle";
|
||||
urls = [
|
||||
{
|
||||
template = "https://noogle.dev/q/?term={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://noogle.dev/favicon.ico";
|
||||
definedAliases = ["@ng"];
|
||||
};
|
||||
arch-wiki = {
|
||||
name = "ArchWiki";
|
||||
urls = [
|
||||
{
|
||||
template = "https://wiki.archlinux.org/index.php?search={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://wiki.archlinux.org/favicon.ico";
|
||||
definedAliases = ["@aw"];
|
||||
|
||||
search = {
|
||||
force = true;
|
||||
default = "ddg-noai";
|
||||
engines = {
|
||||
ddg-noai = {
|
||||
name = "DuckDuckGo No-AI";
|
||||
urls = [
|
||||
{
|
||||
template = "https://noai.duckduckgo.com/?q={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://duckduckgo.com/favicon.ico";
|
||||
definedAliases = ["@noai"];
|
||||
};
|
||||
nixpkgs = {
|
||||
name = "nixpkgs packages";
|
||||
urls = [
|
||||
{
|
||||
template = "https://search.nixos.org/packages?query={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://wiki.nixos.org/favicon.ico";
|
||||
definedAliases = ["@np"];
|
||||
};
|
||||
nixos-options = {
|
||||
name = "NixOS options";
|
||||
urls = [
|
||||
{
|
||||
template = "https://search.nixos.org/options?query={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://wiki.nixos.org/favicon.ico";
|
||||
definedAliases = ["@no"];
|
||||
};
|
||||
nixos-wiki = {
|
||||
name = "NixOS Wiki";
|
||||
urls = [
|
||||
{
|
||||
template = "https://wiki.nixos.org/w/index.php?search={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://wiki.nixos.org/favicon.ico";
|
||||
definedAliases = ["@nw"];
|
||||
};
|
||||
noogle = {
|
||||
name = "Noogle";
|
||||
urls = [
|
||||
{
|
||||
template = "https://noogle.dev/q/?term={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://noogle.dev/favicon.ico";
|
||||
definedAliases = ["@ng"];
|
||||
};
|
||||
arch-wiki = {
|
||||
name = "ArchWiki";
|
||||
urls = [
|
||||
{
|
||||
template = "https://wiki.archlinux.org/index.php?search={searchTerms}";
|
||||
}
|
||||
];
|
||||
icon = "https://wiki.archlinux.org/favicon.ico";
|
||||
definedAliases = ["@aw"];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
);
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
{ inputs, self, ... }: {
|
||||
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
||||
options.features.applications.gui = {
|
||||
fluxer.enable = lib.mkEnableOption "fluxer";
|
||||
fluxer-canary.enable = lib.mkEnableOption "fluxer-canary";
|
||||
};
|
||||
|
||||
config = {
|
||||
environment.systemPackages = (if config.features.applications.gui.fluxer.enable then [
|
||||
(pkgs.callPackage ({ appimageTools, fetchurl, lib, pkgs, ... }:
|
||||
let
|
||||
pname = "fluxer";
|
||||
version = "0.0.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://api.fluxer.app/dl/desktop/stable/linux/x64/latest/appimage";
|
||||
sha256 = "sha256-GdoBK+Z/d2quEIY8INM4IQy5tzzIBBM+3CgJXQn0qAw=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extract { inherit pname version src; };
|
||||
in
|
||||
appimageTools.wrapType2 rec {
|
||||
inherit pname version src;
|
||||
|
||||
extraInstallCommands = ''
|
||||
install -m 444 -D ${appimageContents}/${pname}.desktop $out/share/applications/${pname}.desktop
|
||||
|
||||
install -m 444 -D ${appimageContents}/${pname}.png $out/share/icons/hicolor/512x512/apps/${pname}.png
|
||||
|
||||
substituteInPlace $out/share/applications/${pname}.desktop \
|
||||
--replace 'Exec=AppRun --no-sandbox %U' 'Exec=${pname} %U'
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Open-source, self-hosted alternative to Discord";
|
||||
homepage = "https://fluxer.app/";
|
||||
license = licenses.agpl3Only;
|
||||
maintainers = [ ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}) {})
|
||||
] else []) ++ (if config.features.applications.gui.fluxer-canary.enable then [
|
||||
(pkgs.callPackage ({ appimageTools, fetchurl, lib, pkgs, ... }:
|
||||
let
|
||||
pname = "fluxer-canary";
|
||||
version = "2026.827.132039";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://api.canary.fluxer.app/dl/desktop/canary/linux/x64/latest/appimage";
|
||||
sha256 = "sha256-eRR9JZa4LPuUtjdDO+JvzaOLxQeDgVziLrFr5iIgr1Q=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extract { inherit pname version src; };
|
||||
in
|
||||
appimageTools.wrapType2 rec {
|
||||
inherit pname version src;
|
||||
|
||||
extraInstallCommands = ''
|
||||
install -m 444 -D ${appimageContents}/${pname}.desktop $out/share/applications/${pname}.desktop
|
||||
|
||||
install -m 444 -D ${appimageContents}/${pname}.png $out/share/icons/hicolor/512x512/apps/${pname}.png
|
||||
|
||||
substituteInPlace $out/share/applications/${pname}.desktop \
|
||||
--replace 'Exec=AppRun %U' 'Exec=${pname} %U'
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Open-source, self-hosted alternative to Discord";
|
||||
homepage = "https://fluxer.app/";
|
||||
license = licenses.agpl3Only;
|
||||
maintainers = [ ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}) {})
|
||||
] else []);
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,10 +1,16 @@
|
||||
{ inputs, self, ... }: {
|
||||
flake.homeModules.kitty = { pkgs, ... }: {
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
||||
options.features.applications.gui.kitty.enable = lib.mkEnableOption "kitty";
|
||||
};
|
||||
|
||||
shellIntegration.enableBashIntegration = true;
|
||||
enableGitIntegration = true;
|
||||
flake.homeModules.graphics = { pkgs, osConfig, lib, ... }: {
|
||||
config = lib.mkIf (osConfig.features.applications.gui.kitty.enable) {
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
|
||||
shellIntegration.enableBashIntegration = true;
|
||||
enableGitIntegration = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,14 +1,35 @@
|
||||
{ inputs, self, ... }: {
|
||||
flake.nixosModules.nautilus = { pkgs, config, ... }: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
nautilus
|
||||
code-nautilus
|
||||
adwaita-icon-theme
|
||||
];
|
||||
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
||||
options.features.applications.gui.nautilus.enable = lib.mkEnableOption "nautilus";
|
||||
|
||||
programs.nautilus-open-any-terminal = {
|
||||
enable = true;
|
||||
terminal = "kitty";
|
||||
config = lib.mkIf (config.features.applications.gui.nautilus.enable) {
|
||||
environment.systemPackages = with pkgs; [
|
||||
nautilus
|
||||
adwaita-icon-theme
|
||||
] ++ (
|
||||
if (config.features.applications.gui.vscode.enable)
|
||||
then [ pkgs.code-nautilus ]
|
||||
else []
|
||||
);
|
||||
|
||||
programs.nautilus-open-any-terminal = lib.mkIf (config.features.applications.gui.kitty.enable) {
|
||||
enable = true;
|
||||
terminal = "kitty";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
flake.homeModules.graphics = { pkgs, osConfig, lib, ... }: {
|
||||
config = lib.mkIf (osConfig.features.applications.gui.nautilus.enable) {
|
||||
gtk.gtk3.bookmarks = [
|
||||
"file://${osConfig.info.rootPath} NixOS"
|
||||
"file:///home/grey/Downloads Downloads"
|
||||
"file:///home/grey/Documents Documents"
|
||||
"file:///home/grey/Pictures Pictures"
|
||||
"file:///home/grey/Music Music"
|
||||
"file:///home/grey/Videos Videos"
|
||||
"file:/// Root"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
{ inputs, self, ... }: {
|
||||
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
||||
options.features.applications.gui.remmina.enable = lib.mkEnableOption "remmina";
|
||||
};
|
||||
|
||||
flake.homeModules.graphics = { pkgs, osConfig, lib, ... }: {
|
||||
config = lib.mkIf (osConfig.features.applications.gui.remmina.enable) {
|
||||
home.packages = with pkgs; [
|
||||
remmina
|
||||
freerdp
|
||||
];
|
||||
|
||||
home.activation.linkRemminaPresets = lib.hm.dag.entryAfter ["writeBoundary"] (osConfig.helpers.mkSymlinkActivationScript {
|
||||
target = ".local/share/remmina";
|
||||
source = "dotfiles/${osConfig.info.hostName}/remmina";
|
||||
isDir = true;
|
||||
});
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,20 +1,23 @@
|
||||
{ inputs, self, ... }: {
|
||||
flake.homeModules.vscode = { osConfig, pkgs, lib, ... }: {
|
||||
home.packages = [ pkgs.vscode ];
|
||||
flake.nixosModules.graphics = { pkgs, config, lib, ... }: {
|
||||
options.features.applications.gui.vscode.enable = lib.mkEnableOption "vscode";
|
||||
};
|
||||
|
||||
home.activation = {
|
||||
linkVsCodeConfig = lib.hm.dag.entryAfter ["writeBoundary"] ''
|
||||
#!/bin/bash
|
||||
if [ -f /home/grey/.config/Code/User/settings.json ]; then
|
||||
rm /home/grey/.config/Code/User/settings.json
|
||||
fi
|
||||
ln -s ${osConfig.info.rootPath}/dotfiles/global/vscode/settings.json /home/grey/.config/Code/User/settings.json
|
||||
flake.homeModules.graphics = { osConfig, pkgs, lib, ... }: {
|
||||
config = lib.mkIf (osConfig.features.applications.gui.vscode.enable) {
|
||||
home.packages = [ pkgs.vscode ];
|
||||
|
||||
if [ -f /home/grey/.config/Code/User/keybindings.json ]; then
|
||||
rm /home/grey/.config/Code/User/keybindings.json
|
||||
fi
|
||||
ln -s ${osConfig.info.rootPath}/dotfiles/global/vscode/keybindings.json /home/grey/.config/Code/User/keybindings.json
|
||||
'';
|
||||
home.activation = {
|
||||
linkVsCodeConfigSettings = lib.hm.dag.entryAfter ["writeBoundary"] (osConfig.helpers.mkSymlinkActivationScript {
|
||||
target = ".config/Code/User/settings.json";
|
||||
source = "dotfiles/global/vscode/settings.json";
|
||||
});
|
||||
|
||||
linkVsCodeConfigKeybindings = lib.hm.dag.entryAfter ["writeBoundary"] (osConfig.helpers.mkSymlinkActivationScript {
|
||||
target = ".config/Code/User/keybindings.json";
|
||||
source = "dotfiles/global/vscode/keybindings.json";
|
||||
});
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in new issue
Block a user