Added new desktop

This commit is contained in:
2026-07-14 16:00:16 +02:00
parent b13f4fc9ad
commit 011f04fbf2
5 changed files with 268 additions and 11 deletions
Generated
+33 -11
View File
@@ -2,14 +2,15 @@
"nodes": { "nodes": {
"herdr": { "herdr": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs",
"rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1783468284, "lastModified": 1784033668,
"narHash": "sha256-no8aODMs+tYEnEShJPHKap2imToiA++joPFL+o/ZAmg=", "narHash": "sha256-aVBkCdY2OIpDRNcn4Sp9T0OWfXp8iYnY+12EsYAqFuQ=",
"owner": "ogulcancelik", "owner": "ogulcancelik",
"repo": "herdr", "repo": "herdr",
"rev": "77f0339c3cd387c4ca3f4f240ff8b88065d66a22", "rev": "b0d46fb9bc2a3e7fb58864939e2580b8a9a2f1bc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -25,11 +26,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1783221248, "lastModified": 1783740085,
"narHash": "sha256-ESQnuNHEDChsB4IxoLRhscVahqkDWkTb+qdIz8euYt4=", "narHash": "sha256-qajyHfZY29G2oEQk+uHxmsJcRoBUBXP9maTpFlwP/dI=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "af2beae5f0fae0a4310cc0e6aef2572f56090353", "rev": "3cd22efe6471dc7365c822bd9ad73a21e55f38fb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -57,11 +58,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1783389287, "lastModified": 1783856661,
"narHash": "sha256-R5cxRkQCq5wIM91F9OkIEgu8YoSGjlMeTjYl9o4gpKw=", "narHash": "sha256-+nv/MctTR0m3m5D9cFV2aZC0dQSJB5cThnML4dgVYdg=",
"rev": "0ad6f47ea4fe188f4bc8f0380f93ae8523337c6c", "rev": "569d578509928497eddc3fdbf94a799027050be4",
"type": "tarball", "type": "tarball",
"url": "https://releases.nixos.org/nixos/26.05/nixos-26.05.4364.0ad6f47ea4fe/nixexprs.tar.xz" "url": "https://releases.nixos.org/nixos/26.05/nixos-26.05.4808.569d57850992/nixexprs.tar.xz"
}, },
"original": { "original": {
"id": "nixpkgs", "id": "nixpkgs",
@@ -75,6 +76,27 @@
"home-manager": "home-manager", "home-manager": "home-manager",
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"
} }
},
"rust-overlay": {
"inputs": {
"nixpkgs": [
"herdr",
"nixpkgs"
]
},
"locked": {
"lastModified": 1783577481,
"narHash": "sha256-EWMxOWrJ031f8f/lrcEmhTRs4npw1/5N3Hcjin846c8=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "4cdea398dc491b082dccdce0fad1ed0b75fa3394",
"type": "github"
},
"original": {
"owner": "oxalica",
"repo": "rust-overlay",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",
+17
View File
@@ -29,6 +29,23 @@
]; ];
}; };
nixosConfigurations.fractalus = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./hosts/fractalus
home-manager.nixosModules.home-manager
{
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.ulve = import ./hosts/fractalus/home.nix;
backupFileExtension = "backup";
extraSpecialArgs = { inherit herdr; };
};
}
];
};
nixosConfigurations.macnix = nixpkgs.lib.nixosSystem { nixosConfigurations.macnix = nixpkgs.lib.nixosSystem {
system = "aarch64-linux"; system = "aarch64-linux";
modules = [ modules = [
+152
View File
@@ -0,0 +1,152 @@
# Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help).
{ config, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware-configuration.nix
];
services.openssh = {
enable = true;
settings = {
X11Forwarding = false;
PermitRootLogin = "no";
PasswordAuthentication = false;
};
openFirewall = true;
};
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "fractalus"; # Define your hostname.
networking.networkmanager.enable = true;
time.timeZone = "Europe/Stockholm";
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "sv_SE.UTF-8";
LC_IDENTIFICATION = "sv_SE.UTF-8";
LC_MEASUREMENT = "sv_SE.UTF-8";
LC_MONETARY = "sv_SE.UTF-8";
LC_NAME = "sv_SE.UTF-8";
LC_NUMERIC = "sv_SE.UTF-8";
LC_PAPER = "sv_SE.UTF-8";
LC_TELEPHONE = "sv_SE.UTF-8";
LC_TIME = "sv_SE.UTF-8";
};
services.xserver = {
enable = true;
autoRepeatInterval = 35;
};
services.displayManager.ly.enable = true;
services.xserver.xkb = {
layout = "se";
variant = "nodeadkeys";
options = "caps:escape";
};
console.keyMap = "sv-latin1";
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
users.users."ulve" = {
isNormalUser = true;
shell = pkgs.zsh;
openssh.authorizedKeys.keys = [
# macbook
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICpiU4gStAtrJOBSkQA2YJh98fpWPpxWtWgwAGzVa/wc johansson.olov@gmail.com"
# phone
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHCIwXs/XPwWfdvaAbGYYX8jVu6CP8MhR7qFTaW2hu6Go4X1+1RTuPQ5RwZSj5pKf2Cyn33pY9KuzIChpKLs9uZrNS08BO6SrcjNtcRJrUOAIq8uKqHOXmq2x2PXbHm6vKp5MwRRanQ/Pa1O2P8kYq8HIBlviD5jUzOtEj8neBfJ/x49+27eHvJdwD2whSy0uty7TfNJi180sJGmepjL4SftGTwcevyvkm+koHj0aDRXxOlFhtrpsbdagg4UHe04ljiUF9urGcA3BSRTKuYbSl+MBsX+YxS97Vi4zT6oqwfh5RPzNZ8v3kZaN51jB369UWlAws0+OgGxIfwVUCf6j1 nixserve"
];
description = "ulve";
extraGroups = [ "networkmanager" "wheel" ];
};
programs.steam.enable = true;
programs.zsh.enable = true;
security.pam.services.swaylock = {};
security.polkit.enable = true;
programs.firefox.enable = true;
programs.niri.enable = true;
services.tailscale = {
enable = true;
openFirewall = true;
};
services.syncthing = {
enable = true;
user = "ulve";
dataDir = "/home/ulve";
configDir = "/home/ulve/.config/syncthing";
openDefaultPorts = true;
settings.devices."macbook" = {
id = "U4YVRUT-JAAXHQ4-TA6FAGH-SO6Z7CI-KDFPRNG-UZYNXDK-6OQY7ZA-UBTZRQW";
};
settings.devices."phone" = {
id = "WXTP2PT-GW3C3EJ-JYYYXUT-VEKCAQV-NQTPQLI-TOMDAI3-CSUUHF5-6DH72AM";
};
settings.folders."xdnt7-iaqtd" = {
path = "/home/ulve/Vaults";
devices = [ "macbook" ];
};
settings.folders."yrw8u-ut036" = {
path = "/home/ulve/Phone";
devices = [ "phone" ];
};
};
services.upower.enable = true;
xdg.portal = {
enable = true;
wlr.enable = true;
extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
};
nixpkgs.config.allowUnfree = true;
nixpkgs.overlays = [
(final: prev: {
steam = prev.steam.override {
extraArgs = "-cef-disable-gpu-compositing";
};
})
];
environment.systemPackages = with pkgs; [
wget
curl
];
fonts.packages = with pkgs; [
nerd-fonts.jetbrains-mono
];
nix.gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 14d";
};
nix.settings.auto-optimise-store = true;
nix.settings.experimental-features = ["nix-command" "flakes"];
system.stateVersion = "26.05"; # Did you read the comment?
}
@@ -0,0 +1,31 @@
# 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")
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/4f5c84b3-0437-4213-ab13-71068ef2ab4c";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/B4B3-B2F0";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}
+35
View File
@@ -0,0 +1,35 @@
{config, pkgs, herdr, ...}:
{
imports = [ ../../modules/home-common.nix ../../modules/niri.nix ];
niri.useNoctalia = true;
home.sessionVariables = {
NIXOS_OZONE_WL = "1";
};
# ── Config files ─────────────────────────────────────────────────────────────
xdg.dataFile."applications/switch-wallpaper.desktop".source = ../../config/applications/switch-wallpaper.desktop;
xdg.dataFile."applications/signal.desktop".source = ../../config/applications/signal.desktop;
xdg.dataFile."applications/vesktop.desktop".source = ../../config/applications/vesktop.desktop;
xdg.dataFile."applications/steam.desktop".source = ../../config/applications/steam.desktop;
# ── Packages ─────────────────────────────────────────────────────────────────
home.packages = with pkgs; [
herdr.packages.${pkgs.system}.default # wallpaper manager
brave # browser
teams-for-linux # teams
# terminal
foot # terminal
# file managers
thunar # gui file manager
# messaging
telegram-desktop
signal-desktop
vesktop
karere
];
}