feat: initial switch from hm to hjem

This commit is contained in:
uku 2025-05-06 12:28:08 +02:00
parent 5c21588430
commit 7b77f05476
Signed by: uku
SSH key fingerprint: SHA256:4P0aN6M8ajKukNi6aPOaX0LacanGYtlfjmN+m/sHY/o
15 changed files with 131 additions and 154 deletions

View file

@ -5,16 +5,13 @@
_utils,
agenix,
camasca,
home-manager,
hjem,
nixpkgs,
nix-index-database,
vencord,
...
}:
let
username = "leo";
stateVersion = "24.11";
rootPassword = _utils.setupSingleSecret config "rootPassword" { };
secrets = _utils.setupSharedSecrets config {
secrets = [ "userPassword" ];
@ -23,11 +20,9 @@ in
{
imports = [
agenix.nixosModules.default
home-manager.nixosModules.home-manager
hjem.nixosModules.default
nix-index-database.nixosModules.nix-index
(lib.mkAliasOptionModule [ "hm" ] [ "home-manager" "users" username ])
rootPassword.generate
secrets.generate
@ -71,21 +66,17 @@ in
wget
];
hm = {
home = { inherit stateVersion; };
programs.ssh = {
enable = true;
addKeysToAgent = "yes";
forwardAgent = true;
hjem = {
clobberByDefault = true;
users.leo.files = {
".ssh/config".text = ''
Host *
ForwardAgent yes
AddKeysToAgent yes
'';
};
};
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
};
i18n.defaultLocale = "en_US.UTF-8";
networking = {
@ -196,7 +187,7 @@ in
time.timeZone = "Europe/Paris";
users.users = {
"${username}" = {
leo = {
isNormalUser = true;
shell = pkgs.fish;
extraGroups = [
@ -225,5 +216,5 @@ in
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = lib.mkDefault stateVersion; # Did you read the comment?
system.stateVersion = lib.mkDefault "24.11"; # Did you read the comment?
}

View file

@ -14,6 +14,7 @@
../programs/ghostty.nix
../programs/gnome.nix
../programs/java.nix
../programs/neovim/neovide.nix
];
boot = {
@ -44,8 +45,30 @@
sbctl
wl-clipboard
chromium
(discord.override {
withOpenASAR = true;
withVencord = true;
})
gimp3
gparted
idea-wrapped
mpv
obsidian
strawberry
teams-for-linux
thunderbird
vscode
niigo-miku-cursors
patchouli-cursors
# libreoffice stuff
libreoffice-qt6-fresh
hunspell
hunspellDicts.en_US
hunspellDicts.fr-moderne
];
sessionVariables = {
@ -77,32 +100,6 @@
enable32Bit = true;
};
hm.imports = [ ../programs/neovim/neovide.nix ];
hm.home = {
packages = with pkgs; [
chromium
(discord.override {
withOpenASAR = true;
withVencord = true;
})
gimp3
gparted
idea-wrapped
mpv
obsidian
strawberry
teams-for-linux
thunderbird
vscode
# libreoffice stuff
libreoffice-qt6-fresh
hunspell
hunspellDicts.en_US
hunspellDicts.fr-moderne
];
};
i18n.extraLocaleSettings = {
LC_ADDRESS = "fr_FR.UTF-8";
LC_IDENTIFICATION = "fr_FR.UTF-8";

View file

@ -1,7 +1,5 @@
{
lib,
pkgs,
config,
...
}:
{
@ -31,9 +29,9 @@
programs.light.enable = true;
# hyprland stuff
services.blueman = lib.mkIf config.programs.hyprland.enable { enable = true; };
hm.wayland.windowManager.hyprland.settings.exec-once = with pkgs; [
"${lib.getExe networkmanagerapplet}"
"${lib.getExe' blueman "blueman-applet"}"
];
# services.blueman = lib.mkIf config.programs.hyprland.enable { enable = true; };
# hm.wayland.windowManager.hyprland.settings.exec-once = with pkgs; [
# "${lib.getExe networkmanagerapplet}"
# "${lib.getExe' blueman "blueman-applet"}"
# ];
}

22
flake.lock generated
View file

@ -3,9 +3,7 @@
"agenix": {
"inputs": {
"darwin": [],
"home-manager": [
"home-manager"
],
"home-manager": [],
"nixpkgs": [
"nixpkgs"
],
@ -145,23 +143,23 @@
"type": "github"
}
},
"home-manager": {
"hjem": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1746413188,
"narHash": "sha256-i6BoiQP0PasExESQHszC0reQHfO6D4aI2GzOwZMOI20=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "8a318641ac13d3bc0a53651feaee9560f9b2d89a",
"lastModified": 1746355589,
"narHash": "sha256-LguszqsDBTtdBxblQTtN7vOAYmfoe43aHkB8aK1dChE=",
"owner": "feel-co",
"repo": "hjem",
"rev": "77b37eeb583d43e1c723119a69c906235174ce57",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"owner": "feel-co",
"repo": "hjem",
"type": "github"
}
},
@ -283,7 +281,7 @@
"flake-parts": "flake-parts",
"flake-utils": "flake-utils",
"getchvim": "getchvim",
"home-manager": "home-manager",
"hjem": "hjem",
"lanzaboote": "lanzaboote",
"mystia": "mystia",
"nix-index-database": "nix-index-database",

View file

@ -68,7 +68,7 @@
url = "github:uku3lig/agenix";
inputs.nixpkgs.follows = "nixpkgs";
inputs.systems.follows = "systems";
inputs.home-manager.follows = "home-manager";
inputs.home-manager.follows = "";
inputs.darwin.follows = "";
};
@ -89,8 +89,8 @@
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager";
hjem = {
url = "github:feel-co/hjem";
inputs.nixpkgs.follows = "nixpkgs";
};

View file

@ -6,17 +6,16 @@
fishPlugins.hydro
];
hm.programs.fish = {
enable = true;
hjem.users.leo.files.".config/fish/config.fish".text = ''
function fish_greeting
end
interactiveShellInit = ''
if status is-interactive
set --global hydro_symbol_git_dirty "*"
set --global hydro_color_pwd blue
set --global hydro_color_git magenta
set --global hydro_color_prompt green
set --global hydro_color_duration yellow
'';
functions.fish_greeting = "";
};
end
'';
}

View file

@ -5,7 +5,7 @@
xpadneo.enable = true;
};
hm.home.packages = with pkgs; [
environment.systemPackages = with pkgs; [
obs-studio
osu-lazer-bin
krita

View file

@ -1,14 +1,12 @@
{ pkgs, ... }:
{
hm.programs.ghostty = {
enable = true;
settings = {
theme = "light:catppuccin-latte,dark:catppuccin-mocha";
font-family = "Iosevka Term";
font-size = 12;
font-feature = [
"-calt"
"-dlig"
];
};
};
environment.systemPackages = [ pkgs.ghostty ];
hjem.users.leo.files.".config/ghostty/config".text = ''
font-family = Iosevka Term
font-feature = -calt
font-feature = -dlig
font-size = 12
theme = light:catppuccin-latte,dark:catppuccin-mocha
'';
}

View file

@ -1,36 +1,36 @@
{ config, ... }:
{ lib, pkgs, ... }:
{
programs.git.enable = true;
environment.systemPackages = with pkgs; [
git
gh
];
hm.programs = {
git = {
inherit (config.programs.git) enable package;
userName = "uku";
userEmail = "hi@uku.moe";
signing = {
format = "ssh";
key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN+7+KfdOrhcnHayxvOENUeMx8rE4XEIV/AxMHiaNUP8";
signByDefault = true;
hjem.users.leo.files = {
".gitconfig".text = lib.generators.toGitINI {
user = {
name = "uku";
email = "hi@uku.moe";
signingKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN+7+KfdOrhcnHayxvOENUeMx8rE4XEIV/AxMHiaNUP8";
};
# delta.enable = true;
extraConfig = {
init.defaultBranch = "main";
core.autocrlf = "input";
push.autoSetupRemote = true;
merge.conflictStyle = "zdiff3";
rebase.autoStash = true;
status.submoduleSummary = true;
diff.submodule = "log";
submodule.recurse = true;
commit.verbose = true;
commit = {
gpgSign = true;
verbose = true;
};
gpg.format = "ssh";
tag.gpgSign = true;
core.autocrlf = "input";
diff.submodule = "log";
init.defaultBranch = "main";
merge.conflictStyle = "zdiff3";
push.autoSetupRemote = true;
rebase.autoStash = true;
status.submoduleSummary = true;
submodule.recurse = true;
};
gh = {
enable = true;
".config/gh/config.yml".text = lib.generators.toYAML { } {
settings.git_protocol = "ssh";
};
};

View file

@ -16,14 +16,6 @@
terminal = "ghostty";
};
hm.programs.gnome-shell = {
enable = true;
extensions = with pkgs.gnomeExtensions; [
{ package = appindicator; }
{ package = dash-to-panel; }
];
};
# ssh-agent is provided by gnome-keyring-daemon
# (mabye soon by gcr, see NixOS/nixpkgs#140824)
programs.ssh.startAgent = lib.mkForce false;
@ -32,6 +24,8 @@
systemPackages = [
adw-gtk3
gnome-tweaks
gnomeExtensions.appindicator
gnomeExtensions.dash-to-panel
];
gnome.excludePackages = [

View file

@ -1,7 +1,6 @@
# home-manager module
{ pkgs, ... }:
{
programs.neovide = {
enable = true;
settings.fork = true;
};
environment.systemPackages = [ pkgs.neovide ];
hjem.users.leo.files.".config/neovide/config.toml".text = "fork = true";
}

View file

@ -8,8 +8,8 @@ let
toml = pkgs.formats.toml { };
in
{
hm.home.file.".cargo/config.toml".source = toml.generate "config.toml" {
build.target-dir = "${config.hm.home.homeDirectory}/.cargo/target";
hjem.users.leo.files.".cargo/config.toml".source = toml.generate "config.toml" {
build.target-dir = "${config.hjem.users.leo.directory}/.cargo/target";
target.x86_64-unknown-linux-gnu = {
linker = "${lib.getExe pkgs.clang}";

View file

@ -7,20 +7,18 @@
services.xserver.videoDrivers = [ "amdgpu" ];
hm = {
home.packages = with pkgs; [
wineWowPackages.waylandFull
];
environment.systemPackages = with pkgs; [
wineWowPackages.waylandFull
];
wayland.windowManager.hyprland.settings = {
monitor = "DP-1,3840x2160@144,0x0,1.5";
xwayland.force_zero_scaling = true;
env = [
"GDK_SCALE,1.5"
"XCURSOR_SIZE,24"
];
};
};
# hm = {
# wayland.windowManager.hyprland.settings = {
# monitor = "DP-1,3840x2160@144,0x0,1.5";
# xwayland.force_zero_scaling = true;
# env = [
# "GDK_SCALE,1.5"
# "XCURSOR_SIZE,24"
# ];
# };
# };
}

View file

@ -37,10 +37,10 @@
};
};
hm.wayland.windowManager.hyprland.settings.env = [
"XDG_SESSION_TYPE,wayland"
"GBM_BACKEND,nvidia-drm"
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
"NVD_BACKEND,direct"
];
# hm.wayland.windowManager.hyprland.settings.env = [
# "XDG_SESSION_TYPE,wayland"
# "GBM_BACKEND,nvidia-drm"
# "__GLX_VENDOR_LIBRARY_NAME,nvidia"
# "NVD_BACKEND,direct"
# ];
}

View file

@ -29,9 +29,14 @@ in
i18n.defaultLocale = lib.mkForce "fr_FR.UTF-8";
hm.programs = {
git.includes = [ { path = "~/.config/git/work_config"; } ];
ssh.includes = [ "work_config" ];
hjem.users.leo.files = {
".gitconfig".text = lib.generators.toGitINI {
include.path = "~/.config/git/work_config";
};
".ssh/config".text = lib.mkBefore ''
Include work_config
'';
};
networking.firewall.allowedTCPPorts = [ 8000 ];