Queen is broken but this might update bcachefs and fix those headaches

This commit is contained in:
Lillian Violet 2024-06-21 23:59:28 +02:00
parent d8965c551c
commit 6776dd3740
7 changed files with 710 additions and 285 deletions

File diff suppressed because it is too large Load diff

View file

@ -5,13 +5,24 @@
# Nixpkgs # Nixpkgs
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixpkgs-edge.url = "nixpkgs/master"; # Only used for bleeding edge packages
nixos-hardware.url = "github:NixOS/nixos-hardware/master"; nixos-hardware.url = "github:NixOS/nixos-hardware/master";
# Disko for declaratively setting disk formatting # Disko for declaratively setting disk formatting
disko.url = "github:nix-community/disko"; disko.url = "github:nix-community/disko";
disko.inputs.nixpkgs.follows = "nixpkgs"; disko.inputs.nixpkgs.follows = "nixpkgs";
bcachefs-tools.url = "github:koverstreet/bcachefs-tools"; bcachefs-tools = {
url = "github:koverstreet/bcachefs-tools";
inputs.nixpkgs.follows = "nixpkgs";
inputs.flake-parts.follows = "flake-parts";
};
flake-parts = {
url = "github:hercules-ci/flake-parts"; # Flake parts for easy flake management
inputs.nixpkgs-lib.follows = "nixpkgs";
};
# Nixos generators for creating ISOs # Nixos generators for creating ISOs
nixos-generators = { nixos-generators = {
@ -86,6 +97,7 @@
outputs = { outputs = {
self, self,
nixpkgs, nixpkgs,
nixpkgs-edge,
nixos-generators, nixos-generators,
catppuccin, catppuccin,
disko, disko,
@ -102,14 +114,21 @@
... ...
} @ inputs: let } @ inputs: let
inherit (self) outputs; inherit (self) outputs;
inherit (inputs) nixpkgs-edge;
# Supported systems for your flake packages, shell, etc. # Supported systems for your flake packages, shell, etc.
systems = [ systems = [
"armv7l-linux"
"x86_64-linux" "x86_64-linux"
]; ];
# This is a function that generates an attribute by calling a function you # This is a function that generates an attribute by calling a function you
# pass to it, with each system as an argument # pass to it, with each system as an argument
forAllSystems = nixpkgs.lib.genAttrs systems; forAllSystems = nixpkgs.lib.genAttrs systems;
pkgs-edge = import nixpkgs-edge {
system = "x86_64-linux";
config = {
allowUnfree = true;
allowUnfreePredicate = _: true;
};
};
in { in {
# Your custom packages # Your custom packages
# Accessible through 'nix build', 'nix shell', etc # Accessible through 'nix build', 'nix shell', etc
@ -139,6 +158,7 @@
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = {inherit inputs outputs;}; specialArgs = {inherit inputs outputs;};
modules = [ modules = [
{_module.args = {inherit pkgs-edge;};}
nixos-hardware.nixosModules.dell-xps-13-7390 nixos-hardware.nixosModules.dell-xps-13-7390
# > Our main nixos configuration file < # > Our main nixos configuration file <
./nixos/hosts/EDI/configuration.nix ./nixos/hosts/EDI/configuration.nix
@ -161,6 +181,7 @@
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = {inherit inputs outputs;}; specialArgs = {inherit inputs outputs;};
modules = [ modules = [
{_module.args = {inherit pkgs-edge;};}
# > Our main nixos configuration file < # > Our main nixos configuration file <
./nixos/hosts/GLaDOS/configuration.nix ./nixos/hosts/GLaDOS/configuration.nix
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
@ -182,6 +203,7 @@
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = {inherit inputs outputs;}; specialArgs = {inherit inputs outputs;};
modules = [ modules = [
{_module.args = {inherit pkgs-edge;};}
# > Our main nixos configuration file < # > Our main nixos configuration file <
./nixos/hosts/queen/configuration.nix ./nixos/hosts/queen/configuration.nix
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
@ -200,6 +222,7 @@
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = {inherit inputs outputs;}; specialArgs = {inherit inputs outputs;};
modules = [ modules = [
{_module.args = {inherit pkgs-edge;};}
# > Our main nixos configuration file < # > Our main nixos configuration file <
./nixos/hosts/shodan/configuration.nix ./nixos/hosts/shodan/configuration.nix
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
@ -221,6 +244,7 @@
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = {inherit inputs outputs;}; specialArgs = {inherit inputs outputs;};
modules = [ modules = [
{_module.args = {inherit pkgs-edge;};}
"${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares-plasma6.nix" "${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-graphical-calamares-plasma6.nix"
"${nixpkgs}/nixos/modules/installer/cd-dvd/channel.nix" "${nixpkgs}/nixos/modules/installer/cd-dvd/channel.nix"
./nixos/hosts/iso/configuration.nix ./nixos/hosts/iso/configuration.nix
@ -241,6 +265,7 @@
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = {inherit inputs outputs;}; specialArgs = {inherit inputs outputs;};
modules = [ modules = [
{_module.args = {inherit pkgs-edge;};}
"${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix" "${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix"
"${nixpkgs}/nixos/modules/installer/cd-dvd/channel.nix" "${nixpkgs}/nixos/modules/installer/cd-dvd/channel.nix"
./nixos/hosts/iso_server/configuration.nix ./nixos/hosts/iso_server/configuration.nix

View file

@ -6,6 +6,7 @@
lib, lib,
config, config,
pkgs, pkgs,
pkgs-edge,
... ...
}: { }: {
imports = [ imports = [
@ -17,15 +18,7 @@
# You can add overlays here # You can add overlays here
overlays = [ overlays = [
(final: prev: { (final: prev: {
bcachefs-tools = inputs.bcachefs-tools.packages.${pkgs.system}.bcachefs.overrideAttrs (oldAttrs: { bcachefs-tools = pkgs-edge.bcachefs-tools;
patches = [
(pkgs.fetchpatch {
# FIXME: remove when https://github.com/koverstreet/bcachefs-tools/pull/263 is merged
url = "https://github.com/koverstreet/bcachefs-tools/pull/263.patch";
hash = "sha256-M5FhW5ZWQdfXbLzb/Rr+rNtLLPRIdlOBnxQzDpnoyyw=";
})
];
});
}) })
# Add overlays your own flake exports (from overlays and pkgs dir): # Add overlays your own flake exports (from overlays and pkgs dir):
outputs.overlays.additions outputs.overlays.additions
@ -42,58 +35,63 @@
programs.nix-index.enable = true; programs.nix-index.enable = true;
programs.nix-index-database.comma.enable = true; programs.nix-index-database.comma.enable = true;
environment.systemPackages = with pkgs; [ environment.systemPackages =
# Custom tools (with pkgs; [
dvd # Custom tools
dvt dvd
servo dvt
restart servo
restart
# System tools # System tools
aha aha
bcachefs-tools bcachefs-tools
clinfo clinfo
comma comma
direnv direnv
git-filter-repo git-filter-repo
gnupg gnupg
pciutils pciutils
podman podman
podman-compose podman-compose
sbctl sbctl
tpm2-tools tpm2-tools
tpm2-tss tpm2-tss
virtualgl virtualgl
vulkan-tools vulkan-tools
waydroid waydroid
waypipe waypipe
wayland-utils wayland-utils
xwaylandvideobridge xwaylandvideobridge
yubikey-personalization yubikey-personalization
zsh zsh
# KDE/QT # KDE/QT
krunner-translator krunner-translator
kdePackages.discover kdePackages.discover
kdePackages.kcalc kdePackages.kcalc
kdePackages.kdepim-addons kdePackages.kdepim-addons
kdePackages.kirigami kdePackages.kirigami
kdePackages.kdeconnect-kde kdePackages.kdeconnect-kde
# kdePackages.krunner-ssh # kdePackages.krunner-ssh
# kdePackages.krunner-symbols # kdePackages.krunner-symbols
kdePackages.packagekit-qt kdePackages.packagekit-qt
kdePackages.plasma-pa kdePackages.plasma-pa
kdePackages.sddm-kcm kdePackages.sddm-kcm
kdePackages.dolphin-plugins kdePackages.dolphin-plugins
libportal-qt5 libportal-qt5
libportal libportal
# User tools # User tools
noisetorch noisetorch
qjackctl qjackctl
wireplumber wireplumber
rustdesk rustdesk
]; ])
++ (with pkgs-edge; [
# list of latest packages from nixpkgs master
# Can be used to install latest version of some packages
]);
programs.direnv = { programs.direnv = {
enable = true; enable = true;
@ -108,7 +106,7 @@
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
extest.enable = true; extest.enable = true;
}; };
hardware.opengl.driSupport32Bit = true; # Enables support for 32bit libs that steam uses hardware.graphics.enable32Bit = true; # Enables support for 32bit libs that steam uses
# Set your time zone. # Set your time zone.
time.timeZone = "Europe/Amsterdam"; time.timeZone = "Europe/Amsterdam";

View file

@ -38,11 +38,11 @@
services.xserver.videoDrivers = ["amdgpu"]; services.xserver.videoDrivers = ["amdgpu"];
# Add vulkan support to GPU # Add vulkan support to GPU
hardware.opengl.extraPackages = with pkgs; [ hardware.graphics.extraPackages = with pkgs; [
amdvlk amdvlk
]; ];
# For 32 bit applications # For 32 bit applications
hardware.opengl.extraPackages32 = with pkgs; [ hardware.graphics.extraPackages32 = with pkgs; [
driversi686Linux.amdvlk driversi686Linux.amdvlk
]; ];

View file

@ -75,8 +75,8 @@
onlyoffice-documentserver onlyoffice-documentserver
phanpy phanpy
postgresql_16 postgresql_16
python3 python310
python311Packages.nbconvert python310Packages.nbconvert
jupyter jupyter
rabbitmq-server rabbitmq-server
roundcube roundcube

View file

@ -4,6 +4,7 @@
lib, lib,
config, config,
pkgs, pkgs,
pkgs-edge,
... ...
}: { }: {
imports = [ imports = [

View file

@ -4,6 +4,7 @@
lib, lib,
config, config,
pkgs, pkgs,
pkgs-edge,
... ...
}: { }: {
nixpkgs = { nixpkgs = {
@ -15,34 +16,40 @@
]; ];
}; };
environment.systemPackages = with pkgs; [ environment.systemPackages =
# Custom tools (with pkgs; [
rebuild # Custom tools
rebuild-no-inhibit rebuild
install-nix rebuild-no-inhibit
update install-nix
upgrade update
simple-completion-language-server upgrade
simple-completion-language-server
# System tools # System tools
age age
alejandra alejandra
e2fsprogs e2fsprogs
git git
git-filter-repo git-filter-repo
helix helix
home-manager home-manager
htop htop
killall killall
oh-my-zsh oh-my-zsh
rsync rsync
tre-command tre-command
wget wget
zsh zsh
tldr tldr
# System libraries
])
++ (with pkgs-edge; [
# list of latest packages from nixpkgs master
# Can be used to install latest version of some packages
]);
# System libraries
];
fonts = { fonts = {
packages = with pkgs; [ packages = with pkgs; [
cantarell-fonts cantarell-fonts