Initial commit
This commit is contained in:
3
modules/development/README.md
Normal file
3
modules/development/README.md
Normal file
@@ -0,0 +1,3 @@
|
||||
This module contains development-focused configuration.
|
||||
|
||||
TLDR: Runtimes, direnv, IDE configuration, virt-manager
|
||||
11
modules/development/default.nix
Normal file
11
modules/development/default.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
imports = [
|
||||
./direnv.nix
|
||||
./packages.nix
|
||||
./virt-manager.nix
|
||||
];
|
||||
|
||||
home-manager.sharedModules = [
|
||||
./home
|
||||
];
|
||||
}
|
||||
6
modules/development/direnv.nix
Normal file
6
modules/development/direnv.nix
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
}
|
||||
10
modules/development/home/default.nix
Normal file
10
modules/development/home/default.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
imports = [
|
||||
./git.nix
|
||||
./vscode.nix
|
||||
];
|
||||
|
||||
programs = {
|
||||
zellij.enable = true;
|
||||
};
|
||||
}
|
||||
32
modules/development/home/git.nix
Normal file
32
modules/development/home/git.nix
Normal 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";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
34
modules/development/home/vscode.nix
Normal file
34
modules/development/home/vscode.nix
Normal 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
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
15
modules/development/packages.nix
Normal file
15
modules/development/packages.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
# Languages
|
||||
nodejs
|
||||
python3
|
||||
go
|
||||
just
|
||||
nodejs
|
||||
|
||||
|
||||
# Tooling
|
||||
zellij
|
||||
];
|
||||
}
|
||||
11
modules/development/virt-manager.nix
Normal file
11
modules/development/virt-manager.nix
Normal 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;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user