Initial commit

This commit is contained in:
Ghostfox
2026-03-30 00:20:36 +02:00
commit 63b75b2e8f
56 changed files with 2581 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
This module contains development-focused configuration.
TLDR: Runtimes, direnv, IDE configuration, virt-manager

View File

@@ -0,0 +1,11 @@
{
imports = [
./direnv.nix
./packages.nix
./virt-manager.nix
];
home-manager.sharedModules = [
./home
];
}

View File

@@ -0,0 +1,6 @@
{
programs.direnv = {
enable = true;
nix-direnv.enable = true;
};
}

View File

@@ -0,0 +1,10 @@
{
imports = [
./git.nix
./vscode.nix
];
programs = {
zellij.enable = true;
};
}

View File

@@ -0,0 +1,32 @@
{ pkgs, ... }:
{
home.packages = with pkgs; [
git-credential-manager
];
programs.git = {
enable = true;
package = pkgs.gitMinimal;
lfs.enable = true;
userName = "Ghostfox";
extraConfig = {
init.defaultBranch = "main";
credential = {
helper = "manager";
credentialStore = "secretservice";
"https://github.com" = {
username = "kpghostfox";
email = "kpghostfox@int.pl";
};
"https://hazzy.nonamesoft.xyz" = {
username = "ghostfox";
email = "ghostfox@laminax.local";
};
};
};
};
}

View File

@@ -0,0 +1,34 @@
{ osConfig, lib, pkgs, ... }:
let
hasGui = osConfig.services.dbus.implementation == "dbus";
baseConfig = {};
exts = pkgs.vscode-extensions;
in
{
config = lib.mkIf hasGui
{
programs.vscode = {
enable = true;
profiles.default = {
extensions = with exts; [
bbenoist.nix
svelte.svelte-vscode
ms-python.python
ms-python.debugpy
ms-python.pylint
golang.go
github.vscode-github-actions
ms-vsliveshare.vsliveshare
prettier.prettier-vscode
sumneko.lua
astro-build.astro-vscode
ms-vscode.cpptools
mesonbuild.mesonbuild
skellock.just
docker.docker
redhat.vscode-yaml
];
};
};
};
}

View File

@@ -0,0 +1,15 @@
{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [
# Languages
nodejs
python3
go
just
nodejs
# Tooling
zellij
];
}

View File

@@ -0,0 +1,11 @@
{ config, lib, ... }:
let
hasGui = config.services.dbus.implementation == "dbus";
in
{
config = lib.mkIf hasGui
{
programs.virt-manager.enable = true;
virtualisation.libvirtd.enable = true;
};
}