marleyos/home/default.nix
punkfairie b8b4759f17
refactor(just): Give Just it's own programs/ module
"It's overkill to give every single package it's own nix module" yeah
probably. I do it so that I never have to guess where something's
configuration lives again. Just open up marleyos/ in lazyvim, hit
<space><space>, search for program, profit.

The only exception is stuff specific to programming languages, such as
language servers and aliases to php artisan. Those live under
languages/<language>. Eventually I'd like to make dev shells for each.
2024-11-05 18:10:51 -08:00

68 lines
1.5 KiB
Nix

{
pkgs,
# nixgl,
...
}:
{
home.username = "marley";
home.homeDirectory = "/home/marley";
targets.genericLinux.enable = true;
# GPU integration.
# nixGL.packages = nixgl.packages;
# nixGL.defaultWrapper = "nvidia";
# nixGL.installScripts = [ "nvidia" ];
home.language.base = "en_US.UTF-8";
# Tell nix what version it is.
nix.package = pkgs.nix;
nix = {
# Enable flakes.
settings.experimental-features = [
"nix-command"
"flakes"
];
# Disable that annoying "git tree is dirty" warning.
extraOptions = ''
warn-dirty = false
'';
# Garbage collection.
gc.automatic = true;
};
xdg.configFile."nixpkgs/config.nix".text = # nix
''
{
allowUnfree = true;
}
'';
# Autostart wanted systemd services.
systemd.user.startServices = true;
imports = [
./appearance
./languages
./profile
./programs
./services
./xorg
];
# This value determines the Home Manager release that your configuration is
# compatible with. This helps avoid breakage when a new Home Manager release
# introduces backwards incompatible changes.
#
# You should not change this value, even if you update Home Manager. If you do
# want to update the value, then make sure to first check the Home Manager
# release notes.
home.stateVersion = "24.05"; # Please read the comment before changing.
# Let home Manager install and manage itself.
programs.home-manager.enable = true;
}