Compare commits

...

4 Commits

Author SHA1 Message Date
John Lancaster
a8c4b75eb1 pruned 2024-12-29 13:31:55 -06:00
John Lancaster
26307a04d1 moved option to home manager 2024-12-29 13:31:48 -06:00
John Lancaster
f2d91f4e36 added user home setup 2024-12-29 13:30:38 -06:00
John Lancaster
e8aee82c00 more notes 2024-12-29 13:30:30 -06:00
3 changed files with 10 additions and 42 deletions

View File

@@ -5,7 +5,10 @@
- Use flakes - Use flakes
- `devenv`-based workflow - `devenv`-based workflow
- Shell - Shell
- Build - Makes `uv` available
- Syncs `devenv` virtual environment
- `appdaemon`
- Build Docker
- SSH remote with VSCode - SSH remote with VSCode
- Jupyter through VSCode - Jupyter through VSCode
- `autoreload` must work with editable install of the dev version - `autoreload` must work with editable install of the dev version
@@ -17,7 +20,7 @@
### `nfs` ### `nfs`
Used to rebuild the ad-nix system. Used to rebuild the `ad-nix` system with whatever is currently symlinked to `/etc/nixos`
### `ads` ### `ads`
@@ -29,7 +32,7 @@ Activated with `.devenv/state/venv/bin/activate`. Used in VSCode for type hints,
### Jupyter ### Jupyter
- Install devenv kernel - might not be useful - Install devenv kernel - might not be useful?
- `python -m ipykernel install --user --name devenv --display-name "Python (devenv)"` - `python -m ipykernel install --user --name devenv --display-name "Python (devenv)"`
- Run jupyter notebook on the side with a `uv run jupyter notebook` command - Run jupyter notebook on the side with a `uv run jupyter notebook` command
- Use the link with the token to connect the jupyter notebook kernel to it - Use the link with the token to connect the jupyter notebook kernel to it

View File

@@ -1,17 +1,11 @@
{ inputs, pkgs, lib, userSettings, systemSettings, ... }: { pkgs, userSettings, systemSettings, ... }:
let
stateVersion = systemSettings.stateVersion;
# adHome = "/srv/appdaemon";
# adNixPath = "${adHome}/ad-nix";
# adPath = "/usr/src/app";
in
{ {
imports = [ imports = [
(import ./home-manager/home.nix {inherit systemSettings userSettings;}) (import ./home-manager/home.nix {inherit systemSettings userSettings;})
./nixos ./nixos
./scripts ./scripts
]; ];
system.stateVersion = stateVersion; system.stateVersion = systemSettings.stateVersion;
time.timeZone = "${systemSettings.timeZone}"; time.timeZone = "${systemSettings.timeZone}";
nix.settings.trusted-users = [ "root" "@wheel" ]; nix.settings.trusted-users = [ "root" "@wheel" ];
@@ -21,31 +15,8 @@ in
sops.defaultSopsFile = ./secrets/secrets.yaml; sops.defaultSopsFile = ./secrets/secrets.yaml;
sops.defaultSopsFormat = "yaml"; sops.defaultSopsFormat = "yaml";
sops.age.keyFile = "${userSettings.adHome}/.config/sops/age/keys.txt";
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# (pkgs.writeShellScriptBin "nrbs" "sudo nixos-rebuild switch")
# (pkgs.writeShellScriptBin "nrbsu" "sudo nix-channel --update && sudo nixos-rebuild switch")
# (pkgs.writeShellScriptBin "nfs" ''
# sudo nixos-rebuild switch --flake $(readlink -f /etc/nixos)#${systemSettings.hostName}
# '')
# (pkgs.writeShellScriptBin "ads" "nix develop --no-pure-eval $(readlink -f /etc/nixos)")
# (pkgs.writeShellScriptBin "link-nix" ''
# set -e
# if [ "$#" -eq 0 ]; then
# echo "Error: No arguments provided."
# echo "Usage: $0 <path>"
# exit 1
# fi
# CURRENT=$(readlink -f /etc/nixos)
# sudo rm /etc/nixos
# echo "Unlinked $CURRENT"
# sudo ln -s $1 /etc/nixos
# echo "Linked $(readlink -f /etc/nixos)"
# '')
bash bash
git git
eza eza
@@ -59,12 +30,4 @@ in
services.vscode-server.enable = true; services.vscode-server.enable = true;
services.openssh.enable = true; services.openssh.enable = true;
services.tailscale.enable = true; services.tailscale.enable = true;
# system.activationScripts.ensureDirectory = ''
# if [ ! -d /conf ]; then
# mkdir /conf
# chmod 0755 /conf
# chown 1000:100 /conf
# fi
# '';
} }

View File

@@ -10,12 +10,14 @@
isNormalUser = true; isNormalUser = true;
extraGroups = [ "wheel" "docker" ]; extraGroups = [ "wheel" "docker" ];
openssh.authorizedKeys.keyFiles = [ ../secrets/authorized_keys ]; openssh.authorizedKeys.keyFiles = [ ../secrets/authorized_keys ];
}; };
home-manager = { home-manager = {
useGlobalPkgs = true; useGlobalPkgs = true;
users.${userSettings.userName} = { ... }: { users.${userSettings.userName} = { ... }: {
home.stateVersion = systemSettings.stateVersion; home.stateVersion = systemSettings.stateVersion;
home.homeDirectory = "${userSettings.adHome}";
systemd.user.startServices = "sd-switch"; # helps with handling systemd services when switching systemd.user.startServices = "sd-switch"; # helps with handling systemd services when switching
imports = [ (import ./git.nix {inherit userSettings;}) ]; imports = [ (import ./git.nix {inherit userSettings;}) ];
programs = { programs = {