upload af nix configs
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
{ config, pkgs, ... }: {
|
||||
imports = [
|
||||
./modules/apps
|
||||
./modules/desktop
|
||||
];
|
||||
|
||||
# System
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
networking.hostName = "nixos";
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
time.timeZone = "Europe/Copenhagen";
|
||||
i18n.defaultLocale = "da_DK.UTF-8";
|
||||
|
||||
# User
|
||||
users.users.glennigen = {
|
||||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" "networkmanager" ];
|
||||
shell = pkgs.fish;
|
||||
};
|
||||
|
||||
# Nix
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
|
||||
# OpenGL / GPU
|
||||
hardware.opengl.enable = true;
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
description = "glennigen's NixOS config";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager/master";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, home-manager, ... }: {
|
||||
nixosConfigurations.nixos = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
modules = [
|
||||
./configuration.nix
|
||||
home-manager.nixosModules.home-manager {
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.users.glennigen = import ./home.nix;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
{ config, pkgs, ... }: {
|
||||
home.username = "glennigen";
|
||||
home.homeDirectory = "/home/glennigen";
|
||||
home.stateVersion = "24.11";
|
||||
|
||||
# Bruger-specifikke pakker — kun til glennigen
|
||||
home.packages = with pkgs; [
|
||||
# Editorer (personlige valg)
|
||||
vscodium
|
||||
sublime4
|
||||
|
||||
# Media
|
||||
sone # musikafspiller
|
||||
obs-studio # streaming/optagelse
|
||||
|
||||
# Discord (Equibop)
|
||||
equibop
|
||||
|
||||
# 1Password GUI
|
||||
_1password-gui
|
||||
];
|
||||
|
||||
programs.bash.enable = true;
|
||||
programs.starship.enable = true;
|
||||
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "glennigen";
|
||||
userEmail = "glennigen@example.com";
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{ pkgs, ... }: {
|
||||
imports = [
|
||||
./native.nix
|
||||
./flatpak.nix
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
{ pkgs, ... }: {
|
||||
services.flatpak.enable = true;
|
||||
|
||||
# Auto-install flatpak-apps ved rebuild
|
||||
system.activationScripts.flatpak = {
|
||||
text = ''
|
||||
FLATPAK="${pkgs.flatpak}/bin/flatpak"
|
||||
|
||||
# Tilføj flathub remote
|
||||
$FLATPAK remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
||||
|
||||
# Installer apps (--or-update opdaterer hvis allerede installeret)
|
||||
apps="
|
||||
io.github.Faugus.faugus-launcher
|
||||
com.adamcake.Bolt
|
||||
com.notesnook.Notesnook
|
||||
com.saivert.pwvucontrol
|
||||
com.github.tchx84.Flatseal
|
||||
org.kde.kdenlive
|
||||
it.mijorus.gearlever
|
||||
com.github.Matoking.protontricks
|
||||
com.vysp3r.ProtonPlus
|
||||
org.musicbrainz.Picard
|
||||
io.github.radiolamp.mangojuice
|
||||
"
|
||||
|
||||
for app in $apps; do
|
||||
$FLATPAK install --noninteractive --or-update flathub "$app" 2>/dev/null || true
|
||||
done
|
||||
'';
|
||||
description = "Install flatpak apps";
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
{ pkgs, ... }: {
|
||||
# Native system packages — fra din Ansible DNF-liste
|
||||
environment.systemPackages = with pkgs; [
|
||||
# Terminal / shell
|
||||
kitty
|
||||
fish
|
||||
fastfetch
|
||||
lsd
|
||||
glow
|
||||
btop
|
||||
tldr
|
||||
neovim
|
||||
|
||||
# Git
|
||||
git
|
||||
gh
|
||||
|
||||
# Gaming
|
||||
steam
|
||||
gamemode
|
||||
gamescope
|
||||
|
||||
# Utility
|
||||
stow
|
||||
tailscale
|
||||
];
|
||||
|
||||
# Fish som default shell for glennigen
|
||||
programs.fish.enable = true;
|
||||
|
||||
# Steam
|
||||
programs.steam.enable = true;
|
||||
|
||||
# Tailscale (service, ikke package)
|
||||
services.tailscale.enable = true;
|
||||
|
||||
# 1Password — PolKit integration (system-level)
|
||||
security.polkit.enable = true;
|
||||
programs._1password.enable = true;
|
||||
programs._1password-gui.enable = true;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{ ... }: {
|
||||
imports = [
|
||||
./kde.nix
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
{ ... }: {
|
||||
# KDE Plasma — desktop environment
|
||||
services.xserver.enable = true;
|
||||
services.displayManager.sddm.enable = true;
|
||||
services.desktopManager.plasma6.enable = true;
|
||||
|
||||
# Lyd
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
|
||||
# Printing
|
||||
services.printing.enable = true;
|
||||
}
|
||||
Reference in New Issue
Block a user