Massive changes to pianonix
This commit is contained in:
parent
eb66634f44
commit
b0a22014c3
@ -92,7 +92,10 @@
|
|||||||
permittedInsecurePackages = [ "olm-3.2.16" ];
|
permittedInsecurePackages = [ "olm-3.2.16" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
systems.modules.nixos = with inputs; [ nix-topology.nixosModules.default ];
|
systems.modules.nixos = with inputs; [
|
||||||
|
nix-topology.nixosModules.default
|
||||||
|
disko.nixosModules.disko
|
||||||
|
];
|
||||||
|
|
||||||
topology =
|
topology =
|
||||||
with inputs;
|
with inputs;
|
||||||
|
@ -23,21 +23,26 @@
|
|||||||
home.username = "julian";
|
home.username = "julian";
|
||||||
home.homeDirectory = "/home/julian";
|
home.homeDirectory = "/home/julian";
|
||||||
|
|
||||||
# DO NOT CHANGE!!!
|
|
||||||
home.stateVersion = "23.11";
|
|
||||||
|
|
||||||
modules = {
|
modules = {
|
||||||
|
non-nixos.is-nixos = true;
|
||||||
|
|
||||||
shell = {
|
shell = {
|
||||||
fish.enable = true;
|
fish.enable = true;
|
||||||
};
|
};
|
||||||
|
yazi.enable = true;
|
||||||
topgrade.enable = true;
|
topgrade.enable = true;
|
||||||
neovim.enable = true;
|
neovim.enable = true;
|
||||||
alacritty.enable = true;
|
wezterm.enable = true;
|
||||||
nix-helper.enable = true;
|
nix-helper.enable = true;
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [ ];
|
desktop.enable = true;
|
||||||
|
fonts.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
# Let Home Manager install and manage itself.
|
# Let Home Manager install and manage itself.
|
||||||
programs.home-manager.enable = true;
|
programs.home-manager.enable = true;
|
||||||
|
|
||||||
|
# ======================== DO NOT CHANGE THIS ========================
|
||||||
|
home.stateVersion = "23.11";
|
||||||
|
# ======================== DO NOT CHANGE THIS ========================
|
||||||
}
|
}
|
||||||
|
@ -10,115 +10,73 @@
|
|||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
{
|
{
|
||||||
imports = [ ./hardware-configuration.nix ];
|
imports = [ ./disko-config.nix ];
|
||||||
|
|
||||||
# Bootloader
|
disko.devices.disk.main.device = "/dev/sda";
|
||||||
# Use this for simple nix boot menu, if no dual boot required
|
|
||||||
boot.loader.systemd-boot.enable = true;
|
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
|
||||||
boot.loader.efi.efiSysMountPoint = "/boot/efi";
|
|
||||||
|
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
networking.hostName = "pianonix"; # Define your hostname.
|
networking.hostName = "pianonix"; # Define your hostname.
|
||||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
|
||||||
|
|
||||||
# Set your time zone.
|
# Set your time zone.
|
||||||
time.timeZone = "Europe/Berlin";
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
# Set location used by redshift
|
|
||||||
location.provider = "manual";
|
|
||||||
location.latitude = 47.92;
|
|
||||||
location.longitude = 10.12;
|
|
||||||
|
|
||||||
modules = {
|
modules = {
|
||||||
|
nix-settings.enable = true;
|
||||||
|
xserver-defaults.enable = true;
|
||||||
|
keymap.enable = true;
|
||||||
|
builder.enable = false;
|
||||||
|
system.boot-efi.enable = true;
|
||||||
|
sound.enable = true;
|
||||||
|
|
||||||
locales.enable = true;
|
locales.enable = true;
|
||||||
|
pcmanfm.enable = true;
|
||||||
|
|
||||||
|
# i3.enable = true;
|
||||||
|
# gdm.enable = true;
|
||||||
|
redshift.enable = true;
|
||||||
|
|
||||||
|
wayland.enable = true;
|
||||||
|
# hyprland.enable = true;
|
||||||
|
# tuigreet.enable = true;
|
||||||
|
|
||||||
|
# virtualbox.enable = true;
|
||||||
|
users-julian.enable = true;
|
||||||
|
# syncthing.enable = true;
|
||||||
|
xdg-portal.enable = true;
|
||||||
|
polkit.enable = true;
|
||||||
|
keyring.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
nix.settings.auto-optimise-store = true;
|
users.mutableUsers = false;
|
||||||
nix.settings.experimental-features = [
|
users.users.root.hashedPassword = "$y$j9T$mDQgl0GARH9fKg01akW1V0$2E5Z4TVra0RbY.tO2B6rW2YnVtJ6tbzZkJRvGWciSkB";
|
||||||
"nix-command"
|
# no password
|
||||||
"flakes"
|
users.users.julian.hashedPassword = "$y$j9T$khuv2ubKt48fkWS754jkL1$/YSqi4mWV9ccfnMAWCF0yumnwZrJ/ddg2TZTuZaDsi8";
|
||||||
];
|
|
||||||
|
|
||||||
# Setup binary caches
|
# Enable the Desktop Environment.
|
||||||
nix.settings = {
|
# services.xserver.displayManager.lightdm.enable = true;
|
||||||
substituters = [
|
services.displayManager.autoLogin = {
|
||||||
"https://nix-community.cachix.org"
|
enable = true;
|
||||||
"https://cache.nixos.org/"
|
user = "julian";
|
||||||
];
|
|
||||||
trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" ];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Enable the X11 windowing system.
|
|
||||||
services.xserver.enable = true;
|
|
||||||
hardware.opengl.enable = true;
|
|
||||||
|
|
||||||
nix.gc = {
|
|
||||||
automatic = true;
|
|
||||||
dates = "weekly";
|
|
||||||
options = "--delete-older-than 30d";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Enable the XFCE Desktop Environment.
|
|
||||||
services.xserver.displayManager.lightdm.enable = true;
|
|
||||||
services.xserver.desktopManager = {
|
services.xserver.desktopManager = {
|
||||||
xterm.enable = false;
|
# xterm.enable = false;
|
||||||
xfce = {
|
lxqt = {
|
||||||
enable = true;
|
enable = true;
|
||||||
noDesktop = true;
|
|
||||||
enableXfwm = false;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
xdg.portal.lxqt.enable = true;
|
||||||
|
|
||||||
# Configure keymap in X11
|
services.openssh = {
|
||||||
services.xserver = {
|
|
||||||
xkb.layout = "de";
|
|
||||||
xkb.variant = "";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Configure console keymap
|
|
||||||
console.keyMap = "de";
|
|
||||||
|
|
||||||
# Enable sound with pipewire.
|
|
||||||
sound.enable = true;
|
|
||||||
hardware.pulseaudio.enable = false;
|
|
||||||
security.rtkit.enable = true;
|
|
||||||
services.pipewire = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
alsa.enable = true;
|
# require public key authentication for better security
|
||||||
alsa.support32Bit = true;
|
settings.PasswordAuthentication = false;
|
||||||
pulse.enable = true;
|
settings.KbdInteractiveAuthentication = false;
|
||||||
|
settings.PermitRootLogin = "yes";
|
||||||
};
|
};
|
||||||
|
users.users."root".openssh.authorizedKeys.keys = [
|
||||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDVk/m4ydcYXzHxTWeNw2MlwxKU+JirTVOeHsYR4wdTokwYyNWZ3/zPcU4+XekSRatwJW1LJYrZ1Y5IJkobzgnOvYVI7SXZ1Tbzb1kAcnChSt+Dp/pKdMPZ8yY3PTFZh+R5F3rWFA/YZqTRhh0vuxPIVbLl7zOPExWwYGn9crkZaYZvKHVvgE5660hXo9pxbUKsSs+DIy/AE7gfKiZLusY95nk9T/jZ7Vmhl0UsF0RiDsfxgE664/vEKe8b+82kKCDt5nJVe8THSrjaw4+NUhef6R8UoUO1/Pn4TKq3Gil3Z36wPEPdkw2lYzX+d1EFyaC3hZJedSUfdFliPOejIbNvvhPBBD1wAGxxyuJZB5KLwWN7/efwCgw45buLbVfUuwwug7K7GK84A3yzqClbZKKv8rYdO04UG64A+Taq2LeyxQIDjygTgGk/1j/0Neb1RO0FbjlbTeNMZ54P+u7BTEcikJCsbFeseWDtYzupQtLt96KMbcdRgHy0CTGqFHE+my8= julian@julian-aspi"
|
||||||
users.users.julian = {
|
];
|
||||||
isNormalUser = true;
|
|
||||||
description = "Julian";
|
|
||||||
uid = 1000;
|
|
||||||
group = "julian";
|
|
||||||
extraGroups = [
|
|
||||||
"networkmanager"
|
|
||||||
"wheel"
|
|
||||||
"docker"
|
|
||||||
];
|
|
||||||
packages = with pkgs; [ ]; # Using home-manager instead
|
|
||||||
};
|
|
||||||
users.groups.julian = {
|
|
||||||
gid = 1000;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.nix-ld.enable = true;
|
|
||||||
|
|
||||||
# List services that you want to enable:
|
|
||||||
services.openssh.enable = false;
|
|
||||||
|
|
||||||
services.syncthing.enable = true;
|
|
||||||
services.syncthing.user = "julian";
|
|
||||||
services.syncthing.group = "julian";
|
|
||||||
|
|
||||||
services.redshift.enable = true;
|
|
||||||
|
|
||||||
services.gnome.gnome-keyring.enable = true;
|
|
||||||
|
|
||||||
# Packages needed as root
|
# Packages needed as root
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
@ -127,11 +85,19 @@
|
|||||||
mc
|
mc
|
||||||
];
|
];
|
||||||
|
|
||||||
# This value determines the NixOS release from which the default
|
## Raspberry pi specific config
|
||||||
# settings for stateful data, like file locations and database versions
|
# Prevent host becoming unreachable on wifi after some time (for raspberry pi)
|
||||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
networking.networkmanager.wifi.powersave = false;
|
||||||
# this value at the release version of the first install of this system.
|
# Enable audio devices on raspberry pi
|
||||||
# Before changing this value read the documentation for this option
|
boot.kernelParams = [
|
||||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
"snd_bcm2835.enable_hdmi=1"
|
||||||
system.stateVersion = "22.11"; # Did you read the comment?
|
"snd_bcm2835.enable_headphones=1"
|
||||||
|
];
|
||||||
|
boot.loader.raspberryPi.firmwareConfig = ''
|
||||||
|
dtparam=audio=on
|
||||||
|
'';
|
||||||
|
|
||||||
|
# ======================== DO NOT CHANGE THIS ========================
|
||||||
|
system.stateVersion = "22.11";
|
||||||
|
# ======================== DO NOT CHANGE THIS ========================
|
||||||
}
|
}
|
||||||
|
41
systems/x86_64-linux/pianonix/disko-config.nix
Normal file
41
systems/x86_64-linux/pianonix/disko-config.nix
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
# USAGE in your configuration.nix.
|
||||||
|
# Update devices to match your hardware.
|
||||||
|
# {
|
||||||
|
# imports = [ ./disko-config.nix ];
|
||||||
|
# disko.devices.disk.main.device = "/dev/sda";
|
||||||
|
# }
|
||||||
|
{
|
||||||
|
disko.devices = {
|
||||||
|
disk = {
|
||||||
|
main = {
|
||||||
|
type = "disk";
|
||||||
|
content = {
|
||||||
|
type = "gpt";
|
||||||
|
partitions = {
|
||||||
|
boot = {
|
||||||
|
size = "1M";
|
||||||
|
type = "EF02"; # for grub MBR
|
||||||
|
};
|
||||||
|
ESP = {
|
||||||
|
size = "1G";
|
||||||
|
type = "EF00";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "vfat";
|
||||||
|
mountpoint = "/boot";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
root = {
|
||||||
|
size = "100%";
|
||||||
|
content = {
|
||||||
|
type = "filesystem";
|
||||||
|
format = "ext4";
|
||||||
|
mountpoint = "/";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user