Compare commits

...

3 Commits

Author SHA1 Message Date
ebb043b589 format code 2025-12-06 11:24:15 +01:00
fcfc9f6450 hm: make it backup conflicting files 2025-12-06 11:24:08 +01:00
fe3cd057cd fix regreet with hyprland 2025-12-06 11:23:41 +01:00
7 changed files with 24 additions and 32 deletions

View File

@@ -9,7 +9,7 @@
clippy
cntr # nix debugger
conda
micromamba # a better, faster conda
# micromamba # a better, faster conda
devcontainer # development container
devenv # devbox alternative
dbeaver-bin

View File

@@ -9,7 +9,7 @@
home.packages = with pkgs; [
exiftool
unar # extract archives
dragon-drop# dragndrop
dragon-drop # dragndrop
poppler-utils # pdf preview
fd
ripgrep

View File

@@ -1,6 +1,5 @@
# Only apply this to home-manager standalone
{ outputs, ... }:
{
{outputs, ...}: {
# Apply overlays
nixpkgs = {
overlays = builtins.attrValues outputs.overlays;

View File

@@ -42,6 +42,7 @@
};
};
programs.hyprland.enable = true;
services.desktopManager.plasma6.enable = true;
services.blueman.enable = true;

View File

@@ -41,8 +41,9 @@
"8.8.8.8"
];
# HM
home-manager.useGlobalPkgs = true;
# HM module
home-manager.useGlobalPkgs = true; # hm module uses the pkgs of the nixos config
home-manager.backupFileExtension = "hm-backup"; # backup conflicting files. So hm activation never fails
home-manager.extraSpecialArgs = {
inherit inputs outputs;
};

View File

@@ -2,8 +2,7 @@
lib,
outputs,
...
}:
{
}: {
# Apply overlays
nixpkgs = {
# TODO: apply this to hm and nixos without duplicate code
@@ -37,7 +36,7 @@
};
nix.optimise = {
automatic = true;
dates = [ "weekly" ]; # Optional; allows customizing optimisation schedule
dates = ["weekly"]; # Optional; allows customizing optimisation schedule
};
programs.nix-ld.enable = true;

View File

@@ -1,26 +1,9 @@
{
pkgs,
lib,
config,
...
}: let
{config, ...}: let
homeCfgs = config.home-manager.users;
homeSharePaths = lib.mapAttrsToList (_: v: "${v.home.path}/share") homeCfgs;
vars = ''XDG_DATA_DIRS="$XDG_DATA_DIRS:${lib.concatStringsSep ":" homeSharePaths}" GTK_USE_PORTAL=0'';
julianCfg = homeCfgs.julian;
sway-kiosk = command: "${lib.getExe pkgs.sway} --unsupported-gpu --config ${pkgs.writeText "kiosk.config" ''
output * bg #000000 solid_color
xwayland disable
input "type:touchpad" {
tap enabled
}
exec '${vars} ${command}; ${pkgs.sway}/bin/swaymsg exit'
''}";
in {
users.extraUsers.greeter = {
# For caching and such
# For caching
home = "/tmp/greeter-home";
createHome = true;
};
@@ -33,13 +16,22 @@ in {
cursorTheme = {
inherit (julianCfg.gtk.cursorTheme) name package;
};
cageArgs = [
"-s"
"-m"
"last"
]; # multimonitor use last monitor
# settings.background = {
# path = julianCfg.wallpaper;
# fit = "Cover";
# }; # TODO: fix
};
services.greetd = {
enable = true;
settings.default_session.command = sway-kiosk (lib.getExe config.programs.regreet.package);
# TODO: setting keyboard language does not work
# settings = {
# env = {
# XKB_DEFAULT_LAYOUT = "de";
# # XKB_DEFAULT_VARIANT = "altgr-intl";
# };
# };
};
}