stuff?
This commit is contained in:
parent
6869c2acbd
commit
3bfebb286d
14 changed files with 235 additions and 34 deletions
65
flake.lock
generated
65
flake.lock
generated
|
|
@ -80,11 +80,11 @@
|
|||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694529238,
|
||||
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -95,7 +95,7 @@
|
|||
},
|
||||
"flake-utils-plus": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils"
|
||||
"flake-utils": "flake-utils_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1696331477,
|
||||
|
|
@ -111,6 +111,24 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-utils_2": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1694529238,
|
||||
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flakeCompat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
|
@ -167,6 +185,27 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-vscode-extensions": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1742090119,
|
||||
"narHash": "sha256-I+NlLtHpTsItYkHo4fFdM6moBHF156wM11TPWLcwdic=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-vscode-extensions",
|
||||
"rev": "adcb8b54d64484bb74f1480acefc3c686f318917",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-vscode-extensions",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-appstream-data": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
|
|
@ -282,10 +321,11 @@
|
|||
"alejandra": "alejandra",
|
||||
"home-manager": "home-manager",
|
||||
"nix-software-center": "nix-software-center",
|
||||
"nix-vscode-extensions": "nix-vscode-extensions",
|
||||
"nixos-conf-editor": "nixos-conf-editor",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs-stable": "nixpkgs-stable",
|
||||
"systems": "systems_3"
|
||||
"systems": "systems_4"
|
||||
}
|
||||
},
|
||||
"rust-analyzer-src": {
|
||||
|
|
@ -359,6 +399,21 @@
|
|||
}
|
||||
},
|
||||
"systems_3": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_4": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
|
|
|
|||
10
flake.nix
10
flake.nix
|
|
@ -11,6 +11,11 @@
|
|||
nix-software-center.url = "github:snowfallorg/nix-software-center";
|
||||
nixos-conf-editor.url = "github:snowfallorg/nixos-conf-editor";
|
||||
|
||||
nix-vscode-extensions = {
|
||||
url = "github:nix-community/nix-vscode-extensions";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
|
@ -39,11 +44,12 @@
|
|||
in {
|
||||
inherit lib;
|
||||
|
||||
formatter = forEachSystem (pkgs: pkgs.alejandra);
|
||||
|
||||
homeManagerModules.default = ./modules/home-manager;
|
||||
nixosModules.default = ./modules/nixos;
|
||||
|
||||
overlays = import ./overlays {inherit inputs outputs;};
|
||||
formatter = forEachSystem (pkgs: pkgs.alejandra);
|
||||
|
||||
nixosConfigurations = {
|
||||
# Yes, my computers are named after the Earthbound Immortals from Yu-Gi-Oh! 5D's :3
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,10 @@
|
|||
{pkgs, ...}: {
|
||||
imports = [
|
||||
./zsh
|
||||
./gh.nix
|
||||
./git.nix
|
||||
./oh-my-posh.nix
|
||||
./tmux.nix
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
|
|
|
|||
8
home-manager/luna/categories/cli/gh.nix
Normal file
8
home-manager/luna/categories/cli/gh.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
{
|
||||
programs.gh = {
|
||||
enable = true;
|
||||
settings = {
|
||||
git_protocol = "ssh";
|
||||
};
|
||||
};
|
||||
}
|
||||
11
home-manager/luna/categories/cli/git.nix
Normal file
11
home-manager/luna/categories/cli/git.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{lib, ...}: {
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = lib.mkDefault "LunarAkai";
|
||||
userEmail = lib.mkDefault "akai@lunarakai.de";
|
||||
extraConfig = {
|
||||
init.defaultBranch = "main";
|
||||
};
|
||||
lfs.enable = true;
|
||||
};
|
||||
}
|
||||
31
home-manager/luna/categories/cli/tmux.nix
Normal file
31
home-manager/luna/categories/cli/tmux.nix
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
{pkgs, ...}: {
|
||||
programs.tmux = {
|
||||
enable = true;
|
||||
prefix = "C-Space";
|
||||
baseIndex = 1;
|
||||
newSession = true;
|
||||
|
||||
mouse = true;
|
||||
clock24 = true;
|
||||
escapeTime = 0;
|
||||
shell = "${pkgs.zsh} /bin/zsh";
|
||||
|
||||
plugins = with pkgs; [
|
||||
tmuxPlugins.yank
|
||||
tmuxPlugins.sensible
|
||||
tmuxPlugins.catppuccin
|
||||
];
|
||||
|
||||
extraConfig = ''
|
||||
# set true color
|
||||
set-option -sa terminal-overrides ",xterm*:Tc"
|
||||
|
||||
# open panes in current directory
|
||||
bind '"' split-window -v -c "#{pane_current_path}"
|
||||
bind % split-window -h -c "#{pane_current_path}"
|
||||
|
||||
# easy reloads
|
||||
bind M-r source-file ~/.config/tmux/tmux.conf
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
@ -7,6 +7,10 @@
|
|||
|
||||
oh-my-zsh = {
|
||||
enable = true;
|
||||
plugins = [
|
||||
"gh"
|
||||
"rust"
|
||||
];
|
||||
};
|
||||
history.size = 10000;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -0,0 +1,38 @@
|
|||
{pkgs, ...}: {
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
extensions = with pkgs.vscode-marketplace; [
|
||||
golang.go
|
||||
|
||||
redhat.java
|
||||
redhat.ansible
|
||||
redhat.vscode-yaml
|
||||
|
||||
rust-lang.rust-analyzer
|
||||
ritwickdey.liveserver
|
||||
ecmel.vscode-html-css
|
||||
mhutchie.git-graph
|
||||
pixl-garden.bongocat
|
||||
|
||||
# theme
|
||||
catppuccin.catppuccin-vsc
|
||||
catppuccin.catppuccin-vsc-icons
|
||||
];
|
||||
profiles.default.userSettings = {
|
||||
# pls stop adding generative "AI" to everything :c
|
||||
"chat.agent.enabled" = false;
|
||||
"chat.commandCenter.enabled" = false;
|
||||
|
||||
"editor.semanticHighlighting.enabled" = true;
|
||||
"terminal.integrated.minimumContrastRatio" = 1;
|
||||
"window.titleBarStyle" = "custom";
|
||||
|
||||
"workbench.colorTheme" = "Catppuccin Macchiato";
|
||||
"catppuccin.accentColor" = "mauve";
|
||||
"catppuccin.customUIColors"."mauve"."statusBar.foreground" = "accent";
|
||||
|
||||
"workbench.iconTheme" = "catppuccin-macchiato";
|
||||
"[nix]"."editor.tabSize" = 2;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -4,5 +4,6 @@
|
|||
|
||||
./categories/cli
|
||||
./categories/desktop/common
|
||||
./categories/desktop/coding/vscode
|
||||
];
|
||||
}
|
||||
|
|
|
|||
5
hosts/common/optional/docker.nix
Normal file
5
hosts/common/optional/docker.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
virtualisation.docker = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
||||
|
|
@ -2,23 +2,25 @@
|
|||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
}: let
|
||||
ifTheyExist = groups: builtins.filter (group: builtins.hasAttr group config.users.groups) groups;
|
||||
in {
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users.luna = {
|
||||
isNormalUser = true;
|
||||
description = "luna";
|
||||
shell = pkgs.zsh;
|
||||
extraGroups = [
|
||||
extraGroups = ifTheyExist [
|
||||
"audio"
|
||||
"docker"
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
];
|
||||
packages = with pkgs; [
|
||||
# thunderbird
|
||||
gnome-software
|
||||
git
|
||||
neovim
|
||||
rustup
|
||||
vscode.fhs
|
||||
protonvpn-gui
|
||||
];
|
||||
};
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@
|
|||
../common/optional/pipewire.nix
|
||||
../common/optional/flatpak.nix
|
||||
../common/optional/ckb-next.nix
|
||||
../common/optional/docker.nix
|
||||
|
||||
# Include the results of the hardware scan.
|
||||
./hardware-configuration.nix
|
||||
|
|
@ -67,4 +68,7 @@
|
|||
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
|
||||
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
|
||||
};
|
||||
nixpkgs.overlays = [
|
||||
inputs.nix-vscode-extensions.overlays.default
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,14 @@
|
|||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
config,
|
||||
lib,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = ["xhci_pci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc"];
|
||||
|
|
@ -13,19 +16,19 @@
|
|||
boot.kernelModules = ["kvm-intel"];
|
||||
boot.extraModulePackages = [];
|
||||
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/951f8c69-070f-4e2c-9af9-b52e43a72577";
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/951f8c69-070f-4e2c-9af9-b52e43a72577";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/BF5F-3F1E";
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/BF5F-3F1E";
|
||||
fsType = "vfat";
|
||||
options = ["fmask=0077" "dmask=0077"];
|
||||
};
|
||||
|
||||
fileSystems."/home" =
|
||||
{ device = "/dev/disk/by-uuid/8bf53e75-628e-4a1b-a19f-1ac55be2af35";
|
||||
fileSystems."/home" = {
|
||||
device = "/dev/disk/by-uuid/8bf53e75-628e-4a1b-a19f-1ac55be2af35";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
|
|
|
|||
30
overlays/default.nix
Normal file
30
overlays/default.nix
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
outputs,
|
||||
inputs,
|
||||
}: let
|
||||
addPatches = pkg: patches:
|
||||
pkg.overrideAttrs (oldAttrs: {
|
||||
patches = (oldAttrs.patches or []) ++ patches;
|
||||
});
|
||||
in {
|
||||
# For every flake input, aliases 'pkgs.inputs.${flake}' to
|
||||
# 'inputs.${flake}.packages.${pkgs.system}' or
|
||||
# 'inputs.${flake}.legacyPackages.${pkgs.system}'
|
||||
flake-inputs = final: _: {
|
||||
inputs =
|
||||
builtins.mapAttrs (
|
||||
_: flake: let
|
||||
legacyPackages = (flake.legacyPackages or {}).${final.system} or {};
|
||||
packages = (flake.packages or {}).${final.system} or {};
|
||||
in
|
||||
if legacyPackages != {}
|
||||
then legacyPackages
|
||||
else packages
|
||||
)
|
||||
inputs;
|
||||
};
|
||||
|
||||
nixpkgs.overlays = [
|
||||
nix-vscode-extensions.overlays.default
|
||||
];
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue