Compare commits

...

24 Commits

Author SHA1 Message Date
MichaelFisher1997
282af82651 Updated 2025-07-01 18:08:58 +01:00
MichaelFisher1997
fe0da003b9 Updated 2025-07-01 18:03:06 +01:00
MichaelFisher1997
5e06d3a148 issues 2025-06-29 00:11:18 +01:00
MichaelFisher1997
94b8e38312 issues 2025-06-28 23:50:41 +01:00
MichaelFisher1997
a411f2a073 zen fix 2025-05-26 15:58:46 +01:00
MichaelFisher1997
ef57636c6c portal 2025-05-24 23:17:23 +01:00
MichaelFisher1997
37cb553a87 portal 2025-05-24 22:21:10 +01:00
MichaelFisher1997
a4e1487158 removed home folder 2025-05-11 20:19:28 +01:00
MichaelFisher1997
0d72587a3f started looking at home manager 2025-05-11 19:58:17 +01:00
MichaelFisher1997
f8f6a134d1 moved home manager to module 2025-05-11 19:48:17 +01:00
MichaelFisher1997
ab30a93005 moved home manager to module 2025-05-11 00:35:27 +01:00
MichaelFisher1997
08fd509efb moved home manager to module 2025-05-11 00:26:20 +01:00
MichaelFisher1997
a8806808f1 started looking at home manager 2025-05-11 00:02:21 +01:00
MichaelFisher1997
27faa64382 started looking at home manager 2025-05-10 22:44:45 +01:00
MichaelFisher1997
81bff57394 Flake implemented 2025-05-10 21:30:15 +01:00
MichaelFisher1997
99bea024e8 moved to stable 2025-05-10 19:38:58 +01:00
MichaelFisher1997
ab0558eaf3 refactor build 2025-05-10 18:48:08 +01:00
MichaelFisher1997
948dbff72e refactor build 2025-05-10 18:41:44 +01:00
MichaelFisher1997
2a7c5f1f40 refactor build 2025-05-10 17:03:38 +01:00
MichaelFisher1997
a3c8550d0e refactor build 2025-05-10 17:02:42 +01:00
MichaelFisher1997
1914559b88 refactor build 2025-05-10 16:56:54 +01:00
MichaelFisher1997
7a79886dc6 desktops 2025-05-10 16:43:47 +01:00
MichaelFisher1997
412bd695e1 Remove deprecated hardware.opengl.driSupport option 2025-05-10 16:35:53 +01:00
MichaelFisher1997
13f11fda47 Initial flake-based system config 2025-05-10 16:33:30 +01:00
16 changed files with 319 additions and 334 deletions

87
flake.lock generated Normal file
View File

@@ -0,0 +1,87 @@
{
"nodes": {
"home-manager": {
"inputs": {
"nixpkgs": [
"zen-browser",
"nixpkgs"
]
},
"locked": {
"lastModified": 1743604125,
"narHash": "sha256-ZD61DNbsBt1mQbinAaaEqKaJk2RFo9R/j+eYWeGMx7A=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "180fd43eea296e62ae68e079fcf56aba268b9a1a",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1751274312,
"narHash": "sha256-/bVBlRpECLVzjV19t5KMdMFWSwKLtb5RyXdjz3LJT+g=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "50ab793786d9de88ee30ec4e4c24fb4236fc2674",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-24.11",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1751271578,
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable",
"zen-browser": "zen-browser"
}
},
"zen-browser": {
"inputs": {
"home-manager": "home-manager",
"nixpkgs": [
"nixpkgs-unstable"
]
},
"locked": {
"lastModified": 1751383329,
"narHash": "sha256-52dUY8jEkuXEIZINYb+AVsrmw6FxMhBAG3K9J/2qiSo=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "f29a4fece3b76c3e4579d67e2cf0cb8037f6a351",
"type": "github"
},
"original": {
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

29
flake.nix Normal file
View File

@@ -0,0 +1,29 @@
{
description = "NixOS configuration for hypr-nix with zen-browser";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11";
nixpkgs-unstable.url = "github:nixos/nixpkgs?ref=nixos-unstable";
zen-browser = {
url = "github:0xc000022070/zen-browser-flake";
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
};
outputs = { self, nixpkgs, zen-browser, ... }: {
nixosConfigurations.hypr-nix = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./hosts/hypr-nix/configuration.nix
];
specialArgs = {
zen-browser = zen-browser;
};
};
};
}

10
gpu.nix
View File

@@ -1,10 +0,0 @@
{ pkgs, ... }:
{
hardware.opengl.extraPackages = with pkgs; [
rocmPackages.clr.icd
];
environment.systemPackages = [
pkgs.rocmPackages.rpp
];
}

View File

@@ -6,7 +6,8 @@
{
imports =
[ # Include the results of the hardware scan.
[
# Include the results of the hardware scan.
./hardware-configuration.nix
./packages.nix
./mnt.nix
@@ -25,6 +26,12 @@
boot.loader.grub.useOSProber = true;
boot.initrd.kernelModules = [ "amdgpu" ];
boot.kernelPackages = pkgs.linuxPackages_latest;
nix.package = pkgs.nixVersions.latest;
# Optional but recommended:
nix.extraOptions = ''
experimental-features = nix-command flakes
'';
boot.kernelParams = [
"cgroup_enable=cpuset,cpu,cpuacct,blkio,devices,freezer,net_cls,perf_event,net_prio,hugetlb,pids"
];
@@ -32,10 +39,10 @@
services.zfs.autoScrub.enable = true;
services.zfs.trim.enable = true;
# boot.supportedFilesystems = [ "zfs" ];
# boot.zfs.forceImportRoot = false;
# networking.hostId = "a44f5fde";
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
# boot.supportedFilesystems = [ "zfs" ];
# boot.zfs.forceImportRoot = false;
# networking.hostId = "a44f5fde";
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
# Enable networking
networking.networkmanager.enable = true;
@@ -61,19 +68,21 @@
services = {
# Enable X11 and configure Wayland support
desktopManager = {
plasma6.enable = true;
};
xserver = {
enable = true;
xkb.layout = "gb";
xkb.variant = "";
videoDrivers = ["amdgpu"];
videoDrivers = [ "amdgpu" ];
# Enable GDM as the display manager
displayManager.gdm.enable = true;
# Desktop Managers Configuration
desktopManager = {
gnome.enable = true; # GNOME
plasma6.enable = true; # Use plasma5 for KDE6 as well
gnome.enable = true; # GNOME
};
# Window Managers Configuration
@@ -92,13 +101,9 @@
};
};
# XDG Portals Configuration for Wayland
xdg.portal = {
enable = true;
extraPortals = [
pkgs.xdg-desktop-portal-hyprland
];
};
# Disable GNOME desktop services that might conflict
services.gnome.gnome-keyring.enable = lib.mkForce false;
services.gnome.gnome-online-accounts.enable = lib.mkForce false;
# Configure console keymap
console.keyMap = "uk";
@@ -106,9 +111,6 @@
# Enable CUPS to print documents.
services.printing.enable = true;
# Enable sound with pipewire.
hardware.pulseaudio.enable = false;
#sound.enable = true;
services.flatpak.enable = true;
services.blueman.enable = true;
@@ -134,28 +136,19 @@
users.users.micqdf = {
isNormalUser = true;
description = "micqdf";
extraGroups = [ "networkmanager" "wheel" "docker"];
extraGroups = [ "networkmanager" "wheel" "docker" ];
};
# environment.systemPackages = [
# pkgs.home-manager
# ];
# Install programs config
programs.java.enable = true;
programs.sway.enable = true;
programs.fish.enable = true;
users.defaultUserShell = pkgs.fish;
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
# List packages installed in system profile. To search, run:
# $ nix search wget
#nixpkgs.overlays = [
# (import ./godot4-overlay.nix)
#];
nixpkgs.config.permittedInsecurePackages = [
"electron-33.4.11"
];
#hardware.opengl.driSupport = true; # This is already enabled by default
hardware.bluetooth.enable = true; # enables support for Bluetooth
@@ -165,39 +158,8 @@
Enable = "Source,Sink,Media,Socket";
};
};
#cosmic
#hardware.system76.enableAll = true;
#services.desktopManager.cosmic.enable = true;
#services.displayManager.cosmic-greeter.enable = true;
programs.ssh.askPassword = lib.mkForce "/nix/store/qjl45ra2yaqn88h6s9f7b79zpja9dy8b-seahorse-43.0/libexec/seahorse/ssh-askpass";
hardware.opengl = {
enable = true;
driSupport = true;
#driSupport32Bit = true;
extraPackages = with pkgs; [
vulkan-loader
vulkan-validation-layers
vulkan-extension-layer
intel-media-driver # LIBVA_DRIVER_NAME=iHD
intel-vaapi-driver # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium)
libvdpau-va-gl
vaapiVdpau
mesa.drivers
];
};
programs.steam.enable = true;
programs.steam.gamescopeSession.enable = true;
programs.gamemode.enable = true;
programs.ssh.askPassword = lib.mkForce "/nix/store/qjl45ra2yaqn88h6s9f7b79zpja9dy8b-seahorse-43.0/libexec/seahorse/ssh-askpass";
# # List services that you want to enable:
# environment.sessionVariables = {
# STEAM_EXTRA_COMPAT_TOOLS_PATHS = "/home/micqdf/.steam/root/compatibilitytools.d";
# hyprshot = "/home/micqdf/flakes/hyprshot/Hyprshot";
# };
#
security.polkit.enable = true;
# Enable the OpenSSH daemon.
services.openssh.enable = true;
@@ -209,12 +171,6 @@
# Or disable the firewall altogether.
# networking.firewall.enable = false;
nix.settings.experimental-features = [ "nix-command" "flakes" ];
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "24.11"; # Did you read the comment?
system.autoUpgrade.enable = true;
system.autoUpgrade.allowReboot = false;

View File

@@ -17,7 +17,7 @@
# Override the Docker service to disable autostart
systemd.services.docker = {
enable = false;
enable = true;
wants = [ "docker.socket" ];
after = [ "docker.socket" ];
serviceConfig = {

29
hosts/hypr-nix/gpu.nix Normal file
View File

@@ -0,0 +1,29 @@
{ pkgs, ... }:
{
environment.systemPackages = [
pkgs.rocmPackages.rpp
];
hardware.opengl = {
enable = true;
extraPackages = with pkgs; [
mesa.drivers
];
};
hardware.graphics = {
enable = true;
#driSupport = true;
#driSupport32Bit = true;
extraPackages = with pkgs; [
rocmPackages.clr.icd
vulkan-loader
vulkan-validation-layers
vulkan-extension-layer
intel-media-driver # LIBVA_DRIVER_NAME=iHD
intel-vaapi-driver # LIBVA_DRIVER_NAME=i965 (older but works better for Firefox/Chromium)
libvdpau-va-gl
vaapiVdpau
mesa
];
};
}

View File

@@ -5,7 +5,8 @@
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
[
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "sd_mod" ];
@@ -14,7 +15,8 @@
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/2ccf7538-1328-4793-a455-d62e09c1f057";
{
device = "/dev/disk/by-uuid/2ccf7538-1328-4793-a455-d62e09c1f057";
fsType = "ext4";
};

View File

@@ -1,13 +1,13 @@
{ pkgs, ... }:
{
programs.hyprland = {
enable = true;
# package = inputs.hyprland.packages.${pkgs.system}.hyprland;
xwayland.enable = true;
};
enable = true;
# package = inputs.hyprland.packages.${pkgs.system}.hyprland;
xwayland.enable = true;
};
environment.systemPackages = with pkgs; [
waypaper
waypaper
wl-clipboard
blueman
rofi-wayland
@@ -35,14 +35,13 @@
discocss
themechanger
catppuccin-kvantum
dolphin
nwg-drawer
hyprpaper
];
];
programs.thunar.enable = true;
programs.thunar.plugins = with pkgs.xfce; [
thunar-archive-plugin
thunar-volman
thunar-archive-plugin
thunar-volman
];
}

View File

@@ -1,7 +1,7 @@
#this might be redundent
{config, pkgs, callPackage, ... }:
{ config, pkgs, callPackage, ... }:
{
services.xserver = {
services.xserver = {
enable = true;
desktopManager = {
@@ -16,7 +16,7 @@
i3lock #default i3 screen locker
i3blocks #if you are planning on using i3blocks over i3status
picom
];
];
};
};
}

View File

@@ -1,4 +1,4 @@
{... }:
{ ... }:
{
services.rpcbind.enable = true; # needed for NFS

113
hosts/hypr-nix/packages.nix Normal file
View File

@@ -0,0 +1,113 @@
{ config, pkgs, zen-browser, ... }:
let
unstable = import
(builtins.fetchTarball "channel:nixos-unstable")
{ config = config.nixpkgs.config; };
in
{
environment.systemPackages = with pkgs; [
#flakes
zen-browser.packages."${system}".twilight
# Core Languages & Runtimes (that need to be global)
openjdk
# Nix & Nix tools
nixpkgs-fmt
nixpkgs-review
nurl
# Core CLI & Networking Tools
curl
wget
tree
fd
bat
lsd
tldr
# File systems, Mounts, Partitions
btrfs-progs
nfs-utils
ntfs3g
gvfs
parted
gparted
gptfdisk
ldmtool
smartmontools
# Network & VPN
tailscale
ipmitool
# Containers & Virtualization
docker
docker-compose
kubectl
minikube
terraform
helm
awscli2
sqlite
postgresql
virt-manager
# System monitoring
htop
btop
amdgpu_top
# Xorg/WM system utils
xorg.xprop
xorg.xkill
# Login/session management
networkmanagerapplet
networkmanager_dmenu
# System Security
vault
onlyoffice-bin
rcon
rconc
monero-gui
# Spice/QEMU/VM graphics
spice
spice-gtk
spice-vdagent
# KDE core system apps (for Plasma systems)
kdePackages.dolphin
kdePackages.filelight
# ddev (if used for multiple users/projects)
ddev
# Misc System
calc
rpi-imager
light
# Games & GPU/driver helpers (if system-wide needed)
mangohud
# Google Cloud tools (system use)
google-cloud-sdk-gce
kubo
# Backup/recovery (system-wide, headless or cron use)
megasync
# Misc/other core system-wide apps
betterdiscord-installer # if you want it everywhere
air # if needed globally
# Themes and customization (for display manager, greeter, or global theming)
catppuccin-kvantum
themechanger
];
}

View File

@@ -0,0 +1,17 @@
{ ... }:
{
services.sunshine = {
enable = true;
autoStart = true;
capSysAdmin = true;
openFirewall = true;
};
#security.wrappers.sunshine = {
# owner = "root";
# group = "root";
# capabilities = "cap_sys_admin+p";
# source = "${pkgs.sunshine}/bin/sunshine";
# };
}

View File

@@ -1,219 +0,0 @@
{ config, pkgs, ... }:
let
unstable = import
(builtins.fetchTarball "channel:nixos-unstable")
{ config = config.nixpkgs.config; };
in
{
environment.systemPackages = with pkgs; [
# Text Editors
vim
libsForQt5.kate
sublime
lunarvim
vscode
#unstable.zed-editor
# Development Tools
openjdk
clang-tools
gcc
cmake
glew
glfw
libGL
SDL2
unstable.sdl3
SDL2_image
vulkan-loader
vulkan-tools
vulkan-headers
wayland-protocols
golangci-lint
golangci-lint-langserver
python3
php
php83Packages.composer
libsForQt5.kdenlive
exercism
betterdiscord-installer
unstable.go
unstable.bun
air
tailwindcss
google-cloud-sdk-gce
kubo
hashcat
# Version Control
git
git-lfs
nix-prefetch-git
# Terminals
kitty
alacritty
# Shell Utilities
fish
zsh
curl
wget
tree
fd
fzf
bat
thefuck
tmux
zellij
lolcat
lsd
tldr
# File Management
ranger
_7zz
unrar
zip
unzip
gzip
gvfs
btrfs-progs
nfs-utils
ntfs3g
# System Utilities
htop
vault
btop
amdgpu_top
parted
gparted
xorg.xprop
xorg.xkill
calc
maim
xclip
xdotool
networkmanager_dmenu
virt-manager
networkmanagerapplet
polybarFull
picom
arandr
nitrogen
pywal
ldmtool
smartmontools
gptfdisk
# Window Managers
i3
eww
vesktop
unstable.hyprsunset
unstable.hyprshot
# Web Browsers
brave
google-chrome
firefox
falkon
tor-browser
# Communication
discord
webcord
slack
#telegram-desktop
# Media
vlc
simplescreenrecorder
obs-studio
davinci-resolve-studio
audacity
haruna
# Gaming
mangohud
protonup
protontricks
lutris
bottles
wine
wine64
# Fonts
noto-fonts-color-emoji
twemoji-color-font
catppuccin-kvantum
themechanger
# Backup and Recovery
pika-backup
megasync
# Networking
ngrok
ipmitool
tailscale
remmina
ddev
# Containers and Virtualization
docker
docker-compose
kubectl
terraform
minikube
# Security
onlyoffice-bin
rcon
rconc
monero-gui
# Graphics
spice
spice-gtk
spice-vdagent
# Themes and Customization
kdePackages.qt6ct
catppuccin-kvantum
# Multimedia Tools
svt-av1
rav1e
libaom
unstable.sunshine
# Miscellaneous
fastfetch
betterdiscord-installer
unstable.ghostty
guacamole-client
rpi-imager
kdePackages.filelight
light
#games
flightgear
minetest
openttd
endless-sky
cataclysm-dda
xonotic
superTux
superTuxKart
airshipper
mindustry-wayland
speed_dreams
simutrans_binaries
modrinth-app
minecraft
nsnake
];
}

1
result
View File

@@ -1 +0,0 @@
/nix/store/2hqaqfwyqgx9fpfcpwzf1ajj723z7hk6-nixos-system-hypr-nix-24.05.7376.b134951a4c9f

View File

@@ -1,17 +0,0 @@
{ ... }:
{
services.sunshine = {
enable = true;
autoStart = true;
capSysAdmin = true;
openFirewall = true;
};
#security.wrappers.sunshine = {
# owner = "root";
# group = "root";
# capabilities = "cap_sys_admin+p";
# source = "${pkgs.sunshine}/bin/sunshine";
# };
}