Add filesystems.nix to avoid modifying hardware-config.nix

This commit is contained in:
Username404-59 2026-06-22 20:57:45 +02:00
parent 7cab76ad24
commit f08de9b408
Signed by: Username404-59
GPG Key ID: F3A1878B14F5F0D7
3 changed files with 31 additions and 17 deletions

View File

@ -11,6 +11,9 @@
To fix problems sometimes: To fix problems sometimes:
sudo nixos-rebuild switch -I nixos-config=/etc/nixos/configuration.nix sudo nixos-rebuild switch -I nixos-config=/etc/nixos/configuration.nix
To make an ISO:
sudo nixos-rebuild build-image
*/ */
let let
nixtamal = import ./tamal { nixtamal = import ./tamal {
@ -45,6 +48,7 @@ in
[ [
./local.nix ./local.nix
./hardware-configuration.nix # Results of the hardware scan ("nixos-generate-config" command) ./hardware-configuration.nix # Results of the hardware scan ("nixos-generate-config" command)
./modules/filesystems.nix
"${nixtamal.home-manager}/nixos" "${nixtamal.home-manager}/nixos"
"${nixtamal.catppuccin}/modules/nixos" "${nixtamal.catppuccin}/modules/nixos"
"${nixtamal.nix-cachyos-settings}/module.nix" "${nixtamal.nix-cachyos-settings}/module.nix"

View File

@ -42,7 +42,7 @@ in
boot.loader.limine.extraEntries = lib.mkIf (!isLaptop) '' boot.loader.limine.extraEntries = lib.mkIf (!isLaptop) ''
/Windows /Windows
protocol: efi protocol: efi
path: uuid(F19E62C8-6ED1-4482-976A-6CCF5F561FDD):/EFI/Microsoft/Boot/bootmgfw.efi path: label(windows_efi):/EFI/Microsoft/Boot/bootmgfw.efi
''; '';
powerManagement.cpuFreqGovernor = if !isLaptop then "performance" else "schedutil"; powerManagement.cpuFreqGovernor = if !isLaptop then "performance" else "schedutil";
@ -55,22 +55,7 @@ in
}; };
}; };
fileSystems."/".options = [ "noatime" "discard" ]; fileSystems."/".options = [ "noatime" ];
# Note: for f2fs, create it with "sudo fsck.f2fs -O extra_attr,flexible_inline_xattr,inode_checksum,sb_checksum,compression,lost_found /dev/sdxY"
/* And add these to mount options in hardware-configuration.nix
options = [
"compress_algorithm=lzo-rle"
"compress_extension=*"
#"nocompress_extension=avif,bmp,gif,heic,heif,ico,jpe,jpeg,jpg,png,svg,tif,tiff,webp,3gp,avi,flv,m4v,mkv,mov,mp4,mpeg,mpg,webm,wmv,aac,flac,m4a,mid,midi,mp3,ogg,opus,wav,wma,7z,bz2,gz,rar,tar,tgz,xz,zip,zst,docx,odt,odp,ods,pptx,xlsx,pdf,db,gpg,key,p12,pem,sqlite,sqlite3,enc,aab,apk,appimage,bin,deb,dll,elf,exe,jar,so,rpm,img,iso,qcow2,vdi,vhd,vmdk,otf,ttf,class,dump,log,swp,tmp,bak,cache,part,old,new,core"
"compress_chksum"
"atgc"
"gc_merge"
"checkpoint=enable"
"checkpoint_merge"
"fsync_mode=posix"
"nat_bits"
];
*/
networking.hostName = if !isLaptop then "lizard" else "lizard-portable"; networking.hostName = if !isLaptop then "lizard" else "lizard-portable";
} }

25
modules/filesystems.nix Normal file
View File

@ -0,0 +1,25 @@
{ config, lib, ... }:
{
# Note: for f2fs, create it with "sudo fsck.f2fs -O extra_attr,flexible_inline_xattr,inode_checksum,sb_checksum,compression,lost_found /dev/sdxY"
fileSystems."/".options = lib.mkIf (config.fileSystems."/".fsType == "f2fs")
(lib.mkAfter [
"discard" # Better (on f2fs) than fstrim
"X-fstrim.notrim" # To avoid fstrim
"compress_algorithm=lzo-rle"
"compress_extension=*"
#"nocompress_extension=avif,bmp,gif,heic,heif,ico,jpe,jpeg,jpg,png,svg,tif,tiff,webp,3gp,avi,flv,m4v,mkv,mov,mp4,mpeg,mpg,webm,wmv,aac,flac,m4a,mid,midi,mp3,ogg,opus,wav,wma,7z,bz2,gz,rar,tar,tgz,xz,zip,zst,docx,odt,odp,ods,pptx,xlsx,pdf,db,gpg,key,p12,pem,sqlite,sqlite3,enc,aab,apk,appimage,bin,deb,dll,elf,exe,jar,so,rpm,img,iso,qcow2,vdi,vhd,vmdk,otf,ttf,class,dump,log,swp,tmp,bak,cache,part,old,new,core"
"compress_chksum"
"atgc"
"gc_merge"
"checkpoint=enable"
"checkpoint_merge"
"fsync_mode=posix"
"nat_bits"
]);
services.fstrim.enable = true;
# Link to nix-hardware configs in case I get a new laptop some day:
# https://github.com/NixOS/nixos-hardware
}