[nix] Set up a system for specifying packages
This commit is contained in:
parent
370a8881b5
commit
73e9992f7e
|
@ -1,28 +1,48 @@
|
||||||
# hosts/YourHostName/default.nix
|
|
||||||
{ pkgs, dotfiles, ... }:
|
{ pkgs, dotfiles, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
packageSets = with pkgs; rec {
|
||||||
|
base = [
|
||||||
|
jq
|
||||||
|
ripgrep
|
||||||
|
];
|
||||||
|
languages = [];
|
||||||
|
tooling = [];
|
||||||
|
multimedia = [];
|
||||||
|
|
||||||
|
everything = base ++ languages ++ tooling ++ multimedia;
|
||||||
|
};
|
||||||
|
|
||||||
|
in
|
||||||
{
|
{
|
||||||
|
imports = [];
|
||||||
|
|
||||||
|
|
||||||
# Make sure the nix daemon always runs
|
# Make sure the nix daemon always runs
|
||||||
services.nix-daemon.enable = true;
|
services.nix-daemon.enable = true;
|
||||||
# Installs a version of nix, that dosen't need "experimental-features = nix-command flakes" in /etc/nix/nix.conf
|
|
||||||
# services.nix-daemon.package = pkgs.nixFlakes;
|
# enable the gpg agent by default
|
||||||
|
programs.gnupg.agent.enable = true;
|
||||||
|
|
||||||
# if you use zsh (the default on new macOS installations),
|
# if you use zsh (the default on new macOS installations),
|
||||||
# you'll need to enable this so nix-darwin creates a zshrc sourcing needed environment changes
|
# you'll need to enable this so nix-darwin creates a zshrc sourcing needed environment changes
|
||||||
programs.zsh.enable = true;
|
programs.zsh.enable = true;
|
||||||
|
|
||||||
|
# Make sure to set the correct values, or everything will break! (in reality,
|
||||||
|
# it will just not build)
|
||||||
users.users.alyxia = {
|
users.users.alyxia = {
|
||||||
name = "alyxia";
|
name = "alyxia";
|
||||||
home = "/Users/alyxia";
|
home = "/Users/alyxia";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
# enable the gpg agent by default
|
|
||||||
programs.gnupg.agent.enable = true;
|
|
||||||
|
|
||||||
home-manager = {
|
home-manager = {
|
||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
useUserPackages = true;
|
useUserPackages = true;
|
||||||
users.alyxia = { pkgs, ... }: {
|
users.alyxia = { pkgs, ... }: {
|
||||||
|
home = {
|
||||||
|
packages = packageSets.everything;
|
||||||
|
};
|
||||||
|
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
initExtra = ''
|
initExtra = ''
|
||||||
|
|
Loading…
Reference in New Issue