Initial commit
This commit is contained in:
parent
ac8e9eb1bd
commit
a79d51fa50
10 changed files with 626 additions and 2 deletions
11
README.md
11
README.md
|
@ -1,3 +1,10 @@
|
|||
# nixos_config
|
||||
# Whovian's system flake
|
||||
I needed to put my config into a `git` repo, so I made my first system config flake (and added my `home-manager` setup too.) and committed it.
|
||||
If you have suggestions on "fixing" or "cleaning up" my configurations, please add it to the [Discussions](about:blank) so I can take a look at it later!
|
||||
|
||||
### Future reference:
|
||||
[[github:eclairevoyant/flake-migration - /nixos.md]How to switch to flakes from path-based nix](https://github.com/eclairevoyant/flake-migration/blob/main/nixos.md)
|
||||
[[NixOS-WSL GitHub/Site] How to configure NixOS-WSL with flakes?](https://nix-community.github.io/NixOS-WSL/howto.html)
|
||||
[[Xe Iaso] Nix Flakes on WSL](https://xeiaso.net/blog/nix-flakes-4-wsl-2022-05-01/)
|
||||
[[Home-Manager GitHub/Site] Setting up `home-manager` as a NixOS module.](https://nix-community.github.io/home-manager/index.xhtml#sec-flakes-nixos-module)
|
||||
|
||||
Meant as a temporary repo for configuration maintenance, so just testing atm
|
221
flake.lock
Normal file
221
flake.lock
Normal file
|
@ -0,0 +1,221 @@
|
|||
{
|
||||
"nodes": {
|
||||
"agenix": {
|
||||
"inputs": {
|
||||
"darwin": "darwin",
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1714136352,
|
||||
"narHash": "sha256-BtWQ2Th/jamO1SlD+2ASSW5Jaf7JhA/JLpQHk0Goqpg=",
|
||||
"owner": "ryantm",
|
||||
"repo": "agenix",
|
||||
"rev": "24a7ea390564ccd5b39b7884f597cfc8d7f6f44e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "ryantm",
|
||||
"repo": "agenix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"darwin": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"agenix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1700795494,
|
||||
"narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=",
|
||||
"owner": "lnl7",
|
||||
"repo": "nix-darwin",
|
||||
"rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "lnl7",
|
||||
"ref": "master",
|
||||
"repo": "nix-darwin",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"agenix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1703113217,
|
||||
"narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1714981474,
|
||||
"narHash": "sha256-b3/U21CJjCjJKmA9WqUbZGZgCvospO3ArOUTgJugkOY=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "6ebe7be2e67be7b9b54d61ce5704f6fb466c536f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"my_packages": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715061149,
|
||||
"narHash": "sha256-ZM13/Z/7W9POKVIoMIJzRRzKY8v9oMD1nhLdXej0pFY=",
|
||||
"path": "/home/whovian/.flakes",
|
||||
"type": "path"
|
||||
},
|
||||
"original": {
|
||||
"path": "/home/whovian/.flakes",
|
||||
"type": "path"
|
||||
}
|
||||
},
|
||||
"nixos-wsl": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1715017675,
|
||||
"narHash": "sha256-4bMsnv8KLzz8HWvYzeIjKqRF7IRCLSjo3EC862+L2Dk=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NixOS-WSL",
|
||||
"rev": "1cb8f3c13dee0d40437a9b4b1cf943c06c0cddc4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "main",
|
||||
"repo": "NixOS-WSL",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1714906307,
|
||||
"narHash": "sha256-UlRZtrCnhPFSJlDQE7M0eyhgvuuHBTe1eJ9N9AQlJQ0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "25865a40d14b3f9cf19f19b924e2ab4069b09588",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"agenix": "agenix",
|
||||
"home-manager": "home-manager_2",
|
||||
"my_packages": "my_packages",
|
||||
"nixos-wsl": "nixos-wsl",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
66
flake.nix
Normal file
66
flake.nix
Normal file
|
@ -0,0 +1,66 @@
|
|||
{
|
||||
description = "Whovian9369's WSL NixOS Config";
|
||||
inputs = {
|
||||
### Basically required
|
||||
nixpkgs = {
|
||||
url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
};
|
||||
|
||||
nixos-wsl = {
|
||||
url = "github:nix-community/NixOS-WSL/main";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
### My extra inputs
|
||||
|
||||
agenix = {
|
||||
url = "github:ryantm/agenix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
# optional, not necessary for the module
|
||||
};
|
||||
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
my_packages = {
|
||||
url = "/home/whovian/.flakes";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
}; # inputs
|
||||
|
||||
outputs = { self, nixpkgs, nixos-wsl, agenix, home-manager, my_packages, ... }:
|
||||
{
|
||||
nixosConfigurations = {
|
||||
nixos-wsl = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = [
|
||||
./system/configuration.nix
|
||||
nixos-wsl.nixosModules.wsl
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager = {
|
||||
# users.whovian = import ./home/home.nix;
|
||||
sharedModules = [
|
||||
./home/home.nix
|
||||
agenix.homeManagerModules.default
|
||||
];
|
||||
|
||||
users.whovian.home.packages = [
|
||||
agenix.packages.x86_64-linux.default
|
||||
];
|
||||
|
||||
# Optionally, use home-manager.extraSpecialArgs to pass arguments to home.nix
|
||||
extraSpecialArgs = {
|
||||
system = "x86_64-linux";
|
||||
inherit my_packages;
|
||||
my_pkgs = my_packages.packages.x86_64-linux;
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
206
home/home.nix
Normal file
206
home/home.nix
Normal file
|
@ -0,0 +1,206 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
my_pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
# Home Manager needs a bit of information about you and the paths it should
|
||||
# manage.
|
||||
home.username = "whovian";
|
||||
home.homeDirectory = "/home/whovian";
|
||||
|
||||
/*
|
||||
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 = "23.05"; # Please read the comment before changing.
|
||||
|
||||
# The home.packages option allows you to install Nix packages into your
|
||||
# environment.
|
||||
nixpkgs = {
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = [
|
||||
pkgs._7zz
|
||||
pkgs.bat
|
||||
pkgs.binwalk
|
||||
pkgs.cdecrypt
|
||||
pkgs.colorized-logs
|
||||
pkgs.croc
|
||||
pkgs.dhex
|
||||
pkgs.file
|
||||
pkgs.gdrive3
|
||||
pkgs.git
|
||||
pkgs.hactool
|
||||
pkgs.instaloader
|
||||
pkgs.internetarchive
|
||||
pkgs.lynx
|
||||
pkgs.megatools
|
||||
pkgs.ncdu
|
||||
pkgs.nixfmt-classic
|
||||
pkgs.progress
|
||||
pkgs.pyrosimple # `lstor` etc, seems to be a `pyrocore` fork?
|
||||
pkgs.python3
|
||||
pkgs.quickbms
|
||||
pkgs.rclone
|
||||
pkgs.screen
|
||||
pkgs.sshfs
|
||||
pkgs.unrar-wrapper
|
||||
pkgs.wget
|
||||
pkgs.xxd
|
||||
pkgs.yq
|
||||
|
||||
# my_pkgs.irdkit
|
||||
my_pkgs.ird_tools
|
||||
my_pkgs.rom-properties
|
||||
];
|
||||
|
||||
/*
|
||||
Disabled
|
||||
pkgs.binutils
|
||||
# Instead just do `nix shell nixpkgs#binutils -c strings -- INPUT.ext > INPUT.ext.strings
|
||||
pkgs.jq
|
||||
pkgs.mpv
|
||||
pkgs.ripgrep
|
||||
pkgs.terminator
|
||||
pkgs.yt-dlp
|
||||
pkgs.p7zip
|
||||
# Replaced in favour of nixpkgs#_7zz
|
||||
Disabled
|
||||
*/
|
||||
|
||||
/*
|
||||
# It is sometimes useful to fine-tune packages, for example, by applying
|
||||
# overrides. You can do that directly here, just don't forget the
|
||||
# parentheses. Maybe you want to install Nerd Fonts with a limited number of
|
||||
# fonts?
|
||||
(pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; })
|
||||
*/
|
||||
|
||||
age = {
|
||||
identityPaths = [
|
||||
/home/whovian/.ssh/id_ed25519.nix
|
||||
];
|
||||
secrets = {
|
||||
cursed = {
|
||||
file = ./secrets/curse.age;
|
||||
};
|
||||
openai = {
|
||||
file = ./secrets/openai_key.age;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
bat = {
|
||||
enable = true;
|
||||
};
|
||||
direnv = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
git = {
|
||||
enable = true;
|
||||
userName = "Whovian9369";
|
||||
userEmail = "Whovian9369@gmail.com";
|
||||
extraConfig = {
|
||||
init = {
|
||||
defaultBranch = "main";
|
||||
};
|
||||
};
|
||||
};
|
||||
jq = {
|
||||
enable = true;
|
||||
};
|
||||
ripgrep = {
|
||||
enable = true;
|
||||
};
|
||||
zsh = {
|
||||
enable = true;
|
||||
# Honestly unsure if I should be using `programs.zsh.envExtra` or
|
||||
# `programs.zsh.localVariables` here.
|
||||
localVariables = {
|
||||
DISABLE_MAGIC_FUNCTIONS = true;
|
||||
};
|
||||
# enableAutosuggestions = true;
|
||||
# enableCompletion = true;
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
"git"
|
||||
"sudo"
|
||||
];
|
||||
theme = "bira";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home.file = {
|
||||
/*
|
||||
# Building this configuration will create a copy of 'dotfiles/screenrc' in
|
||||
# the Nix store. Activating the configuration will then make '~/.screenrc' a
|
||||
# symlink to the Nix store copy.
|
||||
".screenrc".source = dotfiles/screenrc;
|
||||
|
||||
# You can also set the file content immediately.
|
||||
".gradle/gradle.properties".text = ''
|
||||
org.gradle.console=verbose
|
||||
org.gradle.daemon.idletimeout=3600000
|
||||
'';
|
||||
*/
|
||||
|
||||
".zshrc".text = ''
|
||||
eval "$(direnv hook zsh)"
|
||||
|
||||
download_nixpkgs_cache_index () {
|
||||
filename="index-$(uname -m | sed 's/^arm64$/aarch64/')-$(uname | tr A-Z a-z)"
|
||||
mkdir -p ~/.cache/nix-index && cd ~/.cache/nix-index
|
||||
# -N will only download a new version if there is an update.
|
||||
wget -q -N https://github.com/Mic92/nix-index-database/releases/latest/download/$filename
|
||||
ln -f $filename files
|
||||
}
|
||||
'';
|
||||
|
||||
".lftp/rc".text = ''
|
||||
alias s32 "mirror -c --use-pget-n=32"
|
||||
alias p32 "pget -n 32 -c"
|
||||
alias p16 "pget -n 16 -c"
|
||||
alias s16 "mirror -c --use-pget-n=16"
|
||||
alias p8 "pget -n 8 -c"
|
||||
alias ssl "set ssl:verify-certificate false"
|
||||
'';
|
||||
};
|
||||
|
||||
home.sessionVariables = {
|
||||
EDITOR = "nano";
|
||||
DOTNET_CLI_TELEMETRY_OPTOUT = "1";
|
||||
OPENAI_API_KEY = "\$(cat ${config.age.secrets."openai".path})";
|
||||
CURSEFORGE_API_KEY = "\$(cat ${config.age.secrets."cursed".path})";
|
||||
};
|
||||
|
||||
home.shellAliases = {
|
||||
"adb" = "adb.exe";
|
||||
"caja" = "explorer.exe";
|
||||
"hactoolnet" = "hactoolnet.exe";
|
||||
"mpv" = "mpv.com";
|
||||
"tailscale" = "tailscale.exe";
|
||||
"yt-dlp" = "yt-dlp.exe";
|
||||
"7zexe" = "/mnt/c/Program\\ Files/7-Zip/7z.exe";
|
||||
"7z" = "7zz";
|
||||
};
|
||||
|
||||
# Let Home Manager install and manage itself.
|
||||
programs.home-manager.enable = true;
|
||||
}
|
7
home/secrets.nix
Normal file
7
home/secrets.nix
Normal file
|
@ -0,0 +1,7 @@
|
|||
let
|
||||
whovian = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKUpUbEtBSySMW82Wm4xOtlGKxnPf8bqKxVMRJH3Sycx";
|
||||
in
|
||||
{
|
||||
"secrets/openai_key.age".publicKeys = [ whovian ];
|
||||
"secrets/curse.age".publicKeys = [ whovian ];
|
||||
}
|
5
home/secrets/curse.age
Normal file
5
home/secrets/curse.age
Normal file
|
@ -0,0 +1,5 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 nNjyyA YJkCAGzmtCrnNTiAzckcxsdxRPebD29OPNLZEej0mX4
|
||||
L3csYDG+wd18ILISw6ps7TumPnzvc75znIGfGpke/FA
|
||||
--- qiOWHYgISNePUXoBw8PAM6UAVBsnpcfQ6LP4NbtELaE
|
||||
[¦Óúæ€ó\Çø]¦U-\5=<06>‰k>qN¨CðÕpù"',¼†•X^4c{0Q#$È5ÀvKi1!|ßöH•“µ*ƒ¢Êñ¯G!—Ûƒ¦ÙBì(ö½4ï›NôSß
|
6
home/secrets/openai_key.age
Normal file
6
home/secrets/openai_key.age
Normal file
|
@ -0,0 +1,6 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 nNjyyA T0oUx0+yWUIFF6Tkp0goApgd5h9DgNO81c52VCm38xo
|
||||
si1r1N5fNISDa7eNRCGWJqbaxC9CvEL0M2vBCLegus0
|
||||
--- QGYuv1LkTjZGsirDspiyGQ6h977ZDUceo6bj45PeRiI
|
||||
Yo0‘áøƺЂV±Ûwh®^Ç‚‘y<E28098>Ü…©¡ Î<>ZOÐPN‘oŠ(qs{ƒ±)á÷Ä
|
||||
×ôÐ!óËS0âu×<>Èë«ãÕ—5î¨r²<10>Ç
|
47
system/configuration.nix
Normal file
47
system/configuration.nix
Normal file
|
@ -0,0 +1,47 @@
|
|||
{ lib,
|
||||
pkgs,
|
||||
config,
|
||||
modulesPath,
|
||||
nixos-wsl,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./packages.nix
|
||||
./users.nix
|
||||
];
|
||||
|
||||
wsl = {
|
||||
enable = true;
|
||||
defaultUser = "whovian";
|
||||
startMenuLaunchers = false;
|
||||
wslConf = {
|
||||
automount = {
|
||||
root = "/mnt";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
networking.hostName = "nixos-wsl";
|
||||
|
||||
# Enable nix flakes
|
||||
nix.settings.experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
|
||||
time.timeZone = "America/New_York";
|
||||
|
||||
/*
|
||||
Add environment.pathsToLink for auto-completion for system packages (e.g. systemd).
|
||||
Appears to be required due to [GitHub - nix-community/home-manager]:
|
||||
https://github.com/nix-community/home-manager/blob/c781b28add41b74423ab2e64496d4fc91192e13a/modules/programs/zsh.nix#L348-L358
|
||||
[/modules/programs/zsh.nix]
|
||||
https://github.com/nix-community/home-manager/issues/3521#issuecomment-1367197995
|
||||
[Issue #3521]
|
||||
*/
|
||||
environment.pathsToLink = [ "/share/zsh" ];
|
||||
|
||||
system.stateVersion = "22.05";
|
||||
}
|
37
system/packages.nix
Normal file
37
system/packages.nix
Normal file
|
@ -0,0 +1,37 @@
|
|||
{ lib, agenix, pkgs, config, modulesPath, ... }:
|
||||
{
|
||||
environment.systemPackages = [
|
||||
pkgs.file
|
||||
pkgs.xterm
|
||||
/*
|
||||
`agenix` is currently added via
|
||||
"nixos#nixosConfigurations.nixos-wsl.modules.environment.systemPackages"
|
||||
*/
|
||||
# agenix.packages.x86_64-linux.default
|
||||
];
|
||||
|
||||
nixpkgs = {
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
zsh = {
|
||||
enable = true;
|
||||
};
|
||||
nano = {
|
||||
enable = true;
|
||||
};
|
||||
/*
|
||||
I haven't figured out how to get `cdemu` properly working in WSL, so I'm
|
||||
just going to leave it as `programs.cdemu.enable = false;` for now.
|
||||
*/
|
||||
cdemu = {
|
||||
enable = false;
|
||||
group = "cdrom";
|
||||
gui = false;
|
||||
image-analyzer = false;
|
||||
};
|
||||
};
|
||||
}
|
22
system/users.nix
Normal file
22
system/users.nix
Normal file
|
@ -0,0 +1,22 @@
|
|||
{ lib,
|
||||
pkgs,
|
||||
config,
|
||||
modulesPath,
|
||||
...
|
||||
}:
|
||||
{
|
||||
users = {
|
||||
users = {
|
||||
whovian = {
|
||||
name = "whovian";
|
||||
description = "Whovian9369";
|
||||
extraGroups = [
|
||||
"wheel"
|
||||
"cdrom"
|
||||
];
|
||||
initialPassword = "abcde"; # I need to log in somehow
|
||||
shell = pkgs.zsh;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Reference in a new issue