adding first steps to cnixlab and some small fixes

This commit is contained in:
2025-03-22 06:03:07 +01:00
parent 488f075f74
commit 55ce423924
25 changed files with 868 additions and 180 deletions

49
users/cnstlab/default.nix Normal file
View File

@@ -0,0 +1,49 @@
{
pkgs,
lib,
config,
# osConfig,
...
}:
# let
# isCnixpad = osConfig.networking.hostName == "cnixpad";
# in
{
imports = [
./modules
./git.nix
];
# ++ lib.optionals isCnixpad [./cpmodules.nix];
home = {
username = "cnst";
homeDirectory = "/home/cnst";
stateVersion = "23.11";
extraOutputsToInstall = ["doc" "devdoc"];
packages = with pkgs; [
# misc.system
bun
];
sessionVariables = {
BROWSER = "zen";
EDITOR = "hx";
TERM = "xterm-256color";
# VK_ICD_FILENAMES = "/run/opengl-driver/share/vulkan/icd.d/radeon_icd.x86_64.json";
# STEAM_EXTRA_COMPAT_TOOLS_PATHS = "/home/cnst/.steam/root/compatibilitytools.d";
# QT_QPA_PLATFORM = "wayland";
# XDG_SESSION_TYPE = "wayland";
};
};
manual = {
html.enable = false;
json.enable = false;
manpages.enable = false;
};
programs.home-manager.enable = true;
# systemd.user.targets.tray.Unit.Requires = lib.mkForce ["graphical-session.target"];
}

62
users/cnstlab/git.nix Normal file
View File

@@ -0,0 +1,62 @@
{
config,
pkgs,
osConfig,
lib,
...
}: let
email = config.programs.git.userEmail;
isCnixpad = osConfig.networking.hostName == "cnixpad";
isCnixlab = osConfig.networking.hostName == "cnixlab";
sshKey =
if isCnixpad
then "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIXCjkKouZrsMoswMIeueO8X/c3kuY3Gb0E9emvkqwUv cnst@cnixpad"
else if isCnixlab
then "placeholder text"
else "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEUub8vbzUn2f39ILhAJ2QeH8xxLSjiyUuo8xvHGx/VB adam@cnst.dev";
in {
home.packages = [pkgs.gh];
programs.git = {
enable = true;
userName = "cnst";
userEmail = "adam@cnst.dev";
delta = {
enable = true;
options.dark = true;
};
extraConfig = {
# user.signingkey = "${config.home.homeDirectory}/.ssh/id_ed25519.pub";
user.signingkey = "${config.home.homeDirectory}/.config/git/allowed_signers";
signing = {
format = lib.mkDefault "ssh";
key = "${config.home.homeDirectory}/.ssh/id_ed25519";
signByDefault = true;
};
gpg = {
# format = lib.mkDefault "ssh";
ssh.allowedSignersFile = config.home.homeDirectory + "/" + config.xdg.configFile."git/allowed_signers".target;
};
commit = {
verbose = true;
gpgSign = false;
};
init.defaultBranch = "main";
merge.conflictStyle = "diff3";
diff.algorithm = "histogram";
log.date = "iso";
column.ui = "auto";
branch.sort = "committerdate";
push.autoSetupRemote = true;
rerere.enabled = true;
};
lfs.enable = true;
ignores = [
".direnv"
"result"
".jj"
];
};
xdg.configFile."git/allowed_signers".text = ''
${email} namespaces="git" ${sshKey}
'';
}

View File

@@ -0,0 +1,6 @@
{
imports = [
./home.nix
./options.nix
];
}

View File

@@ -0,0 +1,160 @@
{
home = {
programs = {
aerc = {
enable = false;
};
alacritty = {
enable = false;
};
anyrun = {
enable = false;
};
bash = {
enable = true;
};
chromium = {
enable = false;
};
discord = {
enable = false;
};
eza = {
enable = true;
};
floorp = {
enable = false;
};
firefox = {
enable = false;
};
fish = {
enable = true;
};
foot = {
enable = false;
};
fuzzel = {
enable = false;
};
ghostty = {
enable = false;
};
helix = {
enable = true;
};
hyprland = {
enable = false;
};
hyprlock = {
enable = false;
};
jujutsu = {
enable = false;
};
kitty = {
enable = false;
};
misc = {
enable = false;
};
mpv = {
enable = false;
};
neovim = {
enable = false;
};
nvf = {
enable = false;
};
nwg-bar = {
enable = false;
};
rofi = {
enable = false;
};
ssh = {
enable = true;
};
tuirun = {
enable = false;
};
vscode = {
enable = false;
};
waybar = {
enable = false;
};
wezterm = {
enable = false;
};
yazi = {
enable = false;
};
zathura = {
enable = false;
};
zed-editor = {
enable = false;
};
zellij = {
enable = false;
};
zen = {
enable = false;
};
zsh = {
enable = false;
};
};
services = {
blueman-applet = {
enable = false;
};
copyq = {
enable = false;
};
dconf = {
settings = {
color-scheme = "prefer-dark";
};
};
dunst = {
enable = false;
};
gpg = {
enable = true;
};
gtk = {
enable = false;
};
hypridle = {
enable = false;
};
hyprpaper = {
enable = false;
};
mako = {
enable = false;
};
nix-index = {
enable = true;
};
protonmail-bridge = {
enable = false;
};
swaync = {
enable = false;
};
syncthing = {
enable = true;
};
udiskie = {
enable = false;
};
xdg = {
enable = false;
};
};
};
}

View File

@@ -0,0 +1,43 @@
{
accounts = {
username = "cnst";
hostname = "cnixlab";
};
monitors = [
{
name = "DP-3";
width = 2560;
height = 1440;
refreshRate = 240;
position = "0x0";
transform = 0;
bitDepth = 10;
workspace = "1";
primary = true;
}
{
name = "DP-4";
width = 1920;
height = 1080;
refreshRate = 60;
position = "2560x0";
transform = 3;
workspace = "5";
primary = false;
}
{
name = "eDP-1";
width = 1920;
height = 1200;
refreshRate = 60;
workspace = "1";
primary = false;
}
];
theme = {
background = {
lockscreen = "wallpaper_2";
desktop = "wallpaper_1";
};
};
}

View File

@@ -14,7 +14,7 @@
];
homeImports = {
"cnst@cnix" =
"cnst@cnixtop" =
sharedImports
++ [
./cnst
@@ -24,6 +24,11 @@
++ [
./cnst
];
"cnst@cnixlab" =
sharedImports
++ [
./cnstlab
];
"toothpick@toothpc" =
sharedImports
++ [