refactor homeModules
This commit is contained in:
parent
0603a85579
commit
4a870d4a18
26 changed files with 126 additions and 65 deletions
|
|
@ -3,29 +3,30 @@
|
|||
|
||||
outputs =
|
||||
inputs@{
|
||||
nixpkgs,
|
||||
clan-core,
|
||||
flake-parts,
|
||||
...
|
||||
}:
|
||||
flake-parts.lib.mkFlake { inherit inputs; } ({
|
||||
flake-parts.lib.mkFlake { inherit inputs; } {
|
||||
imports = [
|
||||
clan-core.flakeModules.default
|
||||
inputs.home-manager.flakeModules.home-manager
|
||||
inputs.terranix.flakeModule
|
||||
./clan/flake-module.nix
|
||||
./clanServices/flake-module.nix
|
||||
./devShells/flake-module.nix
|
||||
./home-manager/flake-module.nix
|
||||
./homeModules/flake-module.nix
|
||||
./infra/flake-module.nix
|
||||
./modules/flake-module.nix
|
||||
./packages/flake-module.nix
|
||||
./flakeModules/flake-module.nix
|
||||
];
|
||||
|
||||
systems = [
|
||||
"x86_64-linux"
|
||||
"aarch64-linux"
|
||||
];
|
||||
});
|
||||
};
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
||||
|
|
|
|||
16
flakeModules/atuin.nix
Normal file
16
flakeModules/atuin.nix
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
flake.nixosModules.atuin-config = {
|
||||
clan.core.vars.generators.atuin = {
|
||||
prompts.key.persist = true;
|
||||
files.key.owner = "rpqt";
|
||||
};
|
||||
};
|
||||
|
||||
flake.homeModules.atuin-config =
|
||||
{ config, osConfig, ... }:
|
||||
{
|
||||
programs.atuin.enable = true;
|
||||
xdg.dataFile."atuin/key".source =
|
||||
config.lib.file.mkOutOfStoreSymlink osConfig.clan.core.vars.generators.atuin.files.key.path;
|
||||
};
|
||||
}
|
||||
5
flakeModules/flake-module.nix
Normal file
5
flakeModules/flake-module.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
imports = [
|
||||
./atuin.nix
|
||||
];
|
||||
}
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = [
|
||||
pkgs.nerd-fonts.jetbrains-mono
|
||||
pkgs.noto-fonts-color-emoji
|
||||
];
|
||||
|
||||
fonts.fontconfig.enable = true;
|
||||
fonts.fontconfig.defaultFonts = {
|
||||
sansSerif = [ "Adwaita Sans" ];
|
||||
monospace = [ "Adwaita Mono" ];
|
||||
};
|
||||
}
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = [
|
||||
pkgs.pass
|
||||
pkgs.gnupg
|
||||
pkgs.pinentry-gnome3
|
||||
];
|
||||
|
||||
programs.gpg.enable = true;
|
||||
services.gpg-agent = {
|
||||
enable = true;
|
||||
pinentry.package = pkgs.pinentry-gnome3;
|
||||
};
|
||||
}
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
flake.homeManagerModules = {
|
||||
dotfiles.imports = [ ./dotfiles.nix ];
|
||||
};
|
||||
}
|
||||
|
|
@ -6,7 +6,7 @@
|
|||
}:
|
||||
{
|
||||
imports = [
|
||||
self.homeManagerModules.dotfiles
|
||||
self.homeModules.dotfiles
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [ senpai ];
|
||||
|
|
@ -21,7 +21,7 @@ let
|
|||
in
|
||||
{
|
||||
imports = [
|
||||
self.homeManagerModules.dotfiles
|
||||
self.homeModules.dotfiles
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
|
|
@ -53,10 +53,6 @@ in
|
|||
programs.starship.enable = true;
|
||||
programs.bat.enable = true;
|
||||
|
||||
programs.atuin.enable = true;
|
||||
xdg.dataFile."atuin/key".source =
|
||||
config.lib.file.mkOutOfStoreSymlink osConfig.clan.core.vars.generators.atuin.files.key.path;
|
||||
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
|
@ -68,6 +64,33 @@ in
|
|||
inherit shellAliases;
|
||||
};
|
||||
|
||||
programs.zellij.enable = true;
|
||||
|
||||
# programs.khal = {
|
||||
# enable = true;
|
||||
# };
|
||||
|
||||
# accounts.calendar.basePath = ".calendar";
|
||||
|
||||
# programs.pimsync.enable = true;
|
||||
|
||||
# accounts.calendar.accounts.personal = {
|
||||
# pimsync.enable = true;
|
||||
# khal.enable = true;
|
||||
# thunderbird.enable = true;
|
||||
# remote = {
|
||||
# url = "https://cloud.rpqt.fr/remote.php/dav/calendars/rpqt/personal/";
|
||||
|
||||
# type = "caldav";
|
||||
# userName = "rpqt@rpqt.fr";
|
||||
# passwordCommand = [
|
||||
# "sh"
|
||||
# "-c"
|
||||
# "passage web/cloud.rpqt.fr | head -n 1"
|
||||
# ];
|
||||
# };
|
||||
# };
|
||||
|
||||
xdg.configFile."git".source = "${config.dotfiles.path}/.config/git";
|
||||
xdg.configFile."jj/config.toml".source = "${config.dotfiles.path}/.config/jj/config.toml";
|
||||
xdg.configFile."task/taskrc".source = "${config.dotfiles.path}/.config/task/taskrc";
|
||||
7
homeModules/desktop/fonts.nix
Normal file
7
homeModules/desktop/fonts.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = [
|
||||
pkgs.nerd-fonts.jetbrains-mono
|
||||
pkgs.noto-fonts-color-emoji
|
||||
];
|
||||
}
|
||||
20
homeModules/desktop/pass.nix
Normal file
20
homeModules/desktop/pass.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{ pkgs, ... }:
|
||||
let
|
||||
pass-alias = pkgs.writeShellScriptBin "pass" ''
|
||||
exec ${pkgs.passage}/bin/passage "$@"
|
||||
'';
|
||||
in
|
||||
{
|
||||
home.packages = [
|
||||
# pkgs.pass
|
||||
pass-alias
|
||||
pkgs.gnupg
|
||||
pkgs.pinentry-gnome3
|
||||
];
|
||||
|
||||
# programs.gpg.enable = true;
|
||||
services.gpg-agent = {
|
||||
enable = false;
|
||||
pinentry.package = pkgs.pinentry-gnome3;
|
||||
};
|
||||
}
|
||||
|
|
@ -6,7 +6,7 @@
|
|||
}:
|
||||
{
|
||||
imports = [
|
||||
self.homeManagerModules.dotfiles
|
||||
self.homeModules.dotfiles
|
||||
];
|
||||
|
||||
home.packages = [
|
||||
|
|
@ -8,8 +8,9 @@
|
|||
imports = [
|
||||
./cli.nix
|
||||
./helix.nix
|
||||
self.homeManagerModules.dotfiles
|
||||
self.homeModules.dotfiles
|
||||
self.inputs.direnv-instant.homeModules.direnv-instant
|
||||
self.homeModules.atuin-config
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
27
homeModules/flake-module.nix
Normal file
27
homeModules/flake-module.nix
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{ lib, ... }:
|
||||
{
|
||||
flake.homeModules =
|
||||
(builtins.readDir ./.)
|
||||
|> lib.filterAttrs (
|
||||
path: type:
|
||||
(type == "directory" && lib.filesystem.pathIsRegularFile (./${path}/default.nix))
|
||||
|| (type == "regular" && (lib.hasSuffix ".nix" path))
|
||||
)
|
||||
|> lib.mapAttrs' (
|
||||
path: type:
|
||||
if type == "directory" then
|
||||
{
|
||||
name = path;
|
||||
value = {
|
||||
imports = [ ./${path} ];
|
||||
};
|
||||
}
|
||||
else
|
||||
{
|
||||
name = lib.removeSuffix ".nix" path;
|
||||
value = {
|
||||
imports = [ ./${path} ];
|
||||
};
|
||||
}
|
||||
);
|
||||
}
|
||||
|
|
@ -6,7 +6,7 @@
|
|||
}:
|
||||
{
|
||||
imports = [
|
||||
self.homeManagerModules.dotfiles
|
||||
self.homeModules.dotfiles
|
||||
];
|
||||
|
||||
home.packages = [ pkgs.helix ];
|
||||
|
|
@ -1,8 +1,7 @@
|
|||
{ self, config, ... }:
|
||||
{
|
||||
imports = [
|
||||
self.homeManagerModules.dotfiles
|
||||
./wayland.nix
|
||||
self.homeModules.dotfiles
|
||||
];
|
||||
|
||||
xdg.configFile."niri".source = "${config.dotfiles.path}/.config/niri";
|
||||
|
|
@ -15,8 +15,8 @@
|
|||
./network.nix
|
||||
./syncthing.nix
|
||||
|
||||
self.nixosModules.atuin-config
|
||||
self.nixosModules.desktop
|
||||
self.nixosModules.dev
|
||||
self.nixosModules.lanzaboote
|
||||
self.nixosModules.nix-defaults
|
||||
|
||||
|
|
@ -26,7 +26,6 @@
|
|||
home-manager.useUserPackages = true;
|
||||
home-manager.users.rpqt = ./home.nix;
|
||||
home-manager.extraSpecialArgs = {
|
||||
inherit (self) inputs;
|
||||
inherit self;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,14 +1,15 @@
|
|||
{ self, ... }:
|
||||
{
|
||||
imports = [
|
||||
../../home-manager/chat.nix
|
||||
../../home-manager/common.nix
|
||||
../../home-manager/desktop
|
||||
../../home-manager/dev.nix
|
||||
../../home-manager/helix.nix
|
||||
../../home-manager/mail
|
||||
../../home-manager/minecraft.nix
|
||||
../../home-manager/desktop
|
||||
../../home-manager/desktop/niri.nix
|
||||
../../home-manager/desktop/vicinae.nix
|
||||
self.homeModules.chat
|
||||
self.homeModules.common
|
||||
self.homeModules.desktop
|
||||
self.homeModules.dev
|
||||
self.homeModules.helix
|
||||
self.homeModules.mail
|
||||
self.homeModules.minecraft
|
||||
self.homeModules.desktop
|
||||
self.homeModules.niri
|
||||
self.homeModules.vicinae
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
clan.core.vars.generators.atuin = {
|
||||
prompts.key.persist = true;
|
||||
files.key.owner = "rpqt";
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue