mirror of
https://github.com/oqyude/nixos.git
synced 2026-06-10 20:20:41 +03:00
111 lines
3.7 KiB
Nix
Executable File
111 lines
3.7 KiB
Nix
Executable File
{ inputs, ... }@flakeContext:
|
|
let
|
|
homeModule =
|
|
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
{
|
|
imports = [ ] ++ (builtins.attrValues inputs.self.homeModules);
|
|
xdg = {
|
|
enable = true;
|
|
autostart.enable = true;
|
|
configFile = {
|
|
"beets" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/beets/linux";
|
|
target = "beets";
|
|
};
|
|
"ludusavi" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/ludusavi/cfg";
|
|
target = "ludusavi";
|
|
};
|
|
"nekoray" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/Nekoray/${config.home.username}";
|
|
target = "nekoray";
|
|
};
|
|
"solaar" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/solaar";
|
|
target = "solaar";
|
|
};
|
|
"easyeffects" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/easyeffects";
|
|
target = "easyeffects";
|
|
};
|
|
"keepassxc" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/KeePassXC";
|
|
target = "keepassxc";
|
|
};
|
|
};
|
|
userDirs = {
|
|
enable = true;
|
|
createDirectories = true;
|
|
desktop = "${config.xdg.dataHome}/desktop";
|
|
documents = null;
|
|
download = "${config.home.homeDirectory}/Downloads";
|
|
music = "${config.home.homeDirectory}/Music";
|
|
pictures = "${config.home.homeDirectory}/Pictures";
|
|
publicShare = "${config.home.homeDirectory}/Misc/Public";
|
|
templates = null;
|
|
videos = "${config.home.homeDirectory}/Pictures/Videos";
|
|
};
|
|
};
|
|
|
|
home = {
|
|
username = "${inputs.zeroq.devices.admin}";
|
|
file = {
|
|
"ssh" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.user-storage}/ssh/${config.home.username}";
|
|
target = ".ssh";
|
|
};
|
|
"External" = {
|
|
source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.therima-drive}";
|
|
target = "External";
|
|
};
|
|
# "Music" = {
|
|
# source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.vetymae-drive}/Users/User/Music";
|
|
# target = "Music";
|
|
# };
|
|
# "Pictures" = {
|
|
# source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.vetymae-drive}/Users/User/Pictures";
|
|
# target = "Pictures";
|
|
# };
|
|
# "Deploy" = {
|
|
# source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.vetymae-drive}/Users/User/Deploy";
|
|
# target = "Deploy";
|
|
# };
|
|
# "Misc" = {
|
|
# source = config.lib.file.mkOutOfStoreSymlink "${inputs.zeroq.dirs.vetymae-drive}/Users/User/Misc";
|
|
# target = "Misc";
|
|
# };
|
|
};
|
|
};
|
|
};
|
|
nixosModule =
|
|
{ config, ... }:
|
|
{
|
|
home-manager = {
|
|
useGlobalPkgs = true;
|
|
useUserPackages = true;
|
|
users.${inputs.zeroq.devices.admin} = homeModule;
|
|
sharedModules = [ inputs.plasma-manager.homeManagerModules.plasma-manager ];
|
|
extraSpecialArgs = {
|
|
inherit (config.networking) hostName;
|
|
};
|
|
};
|
|
|
|
};
|
|
in
|
|
(
|
|
(inputs.home-manager.lib.homeManagerConfiguration {
|
|
modules = [
|
|
homeModule
|
|
];
|
|
pkgs = inputs.nixpkgs.legacyPackages.x86_64-linux;
|
|
})
|
|
// {
|
|
inherit nixosModule;
|
|
}
|
|
)
|