add files

This commit is contained in:
Asaki Yuki 2026-04-13 18:40:55 +07:00
parent 919f3ba969
commit d3ff717341
6 changed files with 122 additions and 58 deletions

View file

@ -81,6 +81,35 @@ in
bluetooth.enable = true; bluetooth.enable = true;
flatpak.enable = true; flatpak.enable = true;
files = {
force = {
".config/dolphinrc" = true;
};
mkForce = {
".mozilla/firefox/default/search.json.mozlz4" = true;
};
source = {
".config/qt5ct/colors/Catppuccin-Mocha.conf" =
"${pkgs.catppuccin-qt5ct}/share/qt5ct/colors/catppuccin-mocha-sapphire.conf";
".config/qt6ct/colors/Catppuccin-Mocha.conf" =
"${pkgs.catppuccin-qt5ct}/share/qt6ct/colors/catppuccin-mocha-sapphire.conf";
".config/dolphinrc" = libs.root "/configs/dolphinrc";
".local/share/kio/servicemenus/copy-server-public-url.desktop" =
libs.root "/configs/services-menu/copy-server-public-url.desktop";
".local/share/kio/servicemenus/open-with-code.desktop" =
libs.root "/configs/services-menu/open-with-code.desktop";
".local/share/kio/servicemenus/open-with-nvim.desktop" =
libs.root "/configs/services-menu/open-with-nvim.desktop";
".local/share/kio/servicemenus/open-with-antigravity.desktop" =
libs.root "/configs/services-menu/open-with-antigravity.desktop";
".local/share/kio/servicemenus/open-ghostty-here.desktop" =
libs.root "/configs/services-menu/open-ghostty-here.desktop";
};
symlink = { symlink = {
"SteamApps" = ".local/share/Steam/steamapps"; "SteamApps" = ".local/share/Steam/steamapps";
"Development/Quickshell" = ".config/quickshell"; "Development/Quickshell" = ".config/quickshell";
@ -88,6 +117,7 @@ in
# "Development/SplashScreen" = ".local/share/plasma/look-and-feel"; # "Development/SplashScreen" = ".local/share/plasma/look-and-feel";
# "Development/DesktopEffects" = ".local/share/kwin/effects"; # "Development/DesktopEffects" = ".local/share/kwin/effects";
}; };
};
programs = { programs = {
terminal = "ghostty"; terminal = "ghostty";

View file

@ -1,26 +1,42 @@
{ pkgs, lib, osconfig, config, ... }:
{ {
home.file = { pkgs,
".config/qt5ct/colors/Catppuccin-Mocha.conf".source = "${pkgs.catppuccin-qt5ct}/share/qt5ct/colors/catppuccin-mocha-sapphire.conf"; lib,
".config/qt6ct/colors/Catppuccin-Mocha.conf".source = "${pkgs.catppuccin-qt5ct}/share/qt6ct/colors/catppuccin-mocha-sapphire.conf"; osconfig,
config,
...
}:
{
home.file = lib.mkMerge [
(builtins.mapAttrs (_: path: {
source = path;
}) osconfig.device.files.source)
".local/share/kio/servicemenus/copy-server-public-url.desktop".source = ../../../configs/services-menu/copy-server-public-url.desktop; (builtins.mapAttrs (_: path: {
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/${path}";
}) osconfig.device.files.symlink)
".local/share/kio/servicemenus/open-with-code.desktop".source = ../../../configs/services-menu/open-with-code.desktop; (lib.mkMerge (
".local/share/kio/servicemenus/open-with-nvim.desktop".source = ../../../configs/services-menu/open-with-nvim.desktop; builtins.map (name: lib.setAttrByPath [ name "force" ] true) (
".local/share/kio/servicemenus/open-with-antigravity.desktop".source = ../../../configs/services-menu/open-with-antigravity.desktop; builtins.attrNames osconfig.device.files.force
".local/share/kio/servicemenus/open-ghostty-here.desktop".source = ../../../configs/services-menu/open-ghostty-here.desktop; )
))
".mozilla/firefox/default/search.json.mozlz4".force = lib.mkForce true; (lib.mkMerge (
".config/dolphinrc" = { builtins.map (name: lib.setAttrByPath [ name "force" ] (lib.mkForce true)) (
force = true; builtins.attrNames osconfig.device.files.mkForce
source = ../../../configs/dolphinrc; )
}; ))
} // builtins.mapAttrs (key: path: { source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/${path}"; }) osconfig.device.symlink; ];
xdg.configFile = { xdg.configFile.kdeglobals.text =
kdeglobals.text = builtins.readFile ((pkgs.catppuccin-kde.override { flavour = ["mocha"]; accents = ["sapphire"]; }) + "/share/color-schemes/CatppuccinMochaSapphire.colors") + builtins.readFile (
'' (pkgs.catppuccin-kde.override {
flavour = [ "mocha" ];
accents = [ "sapphire" ];
})
+ "/share/color-schemes/CatppuccinMochaSapphire.colors"
)
+ ''
[UiSettings] [UiSettings]
ColorScheme=qt6ct ColorScheme=qt6ct
@ -31,5 +47,4 @@
[Icons] [Icons]
Theme=Papirus Theme=Papirus
''; '';
};
} }

View file

@ -1,6 +1,9 @@
{ lib, ... }: { lib, ... }:
{ {
imports = [ ./programs.nix ]; imports = [
./programs.nix
./file.nix
];
options.device = { options.device = {
flatpak.enable = lib.mkEnableOption "flatpak"; flatpak.enable = lib.mkEnableOption "flatpak";

24
options/common/file.nix Normal file
View file

@ -0,0 +1,24 @@
{ lib, ... }:
{
options.device.files = {
symlink = lib.mkOption {
default = { };
type = lib.types.attrsOf lib.types.str;
};
source = lib.mkOption {
default = { };
type = lib.types.attrsOf lib.types.path;
};
force = lib.mkOption {
default = { };
type = lib.types.attrsOf lib.types.bool;
};
mkForce = lib.mkOption {
default = { };
type = lib.types.attrsOf lib.types.bool;
};
};
}

View file

@ -1,11 +1,11 @@
{ lib, ... }: { { lib, ... }:
{
imports = [ imports = [
../common/default.nix ../common/default.nix
./environment.nix ./environment.nix
./programs.nix ./programs.nix
./hardware.nix ./hardware.nix
./file.nix
]; ];
options.device = { options.device = {

View file

@ -1,8 +0,0 @@
{ lib, ... }: {
options.device = {
symlink = lib.mkOption {
default = {};
type = lib.types.attrsOf lib.types.str;
};
};
}