framework-2024-08-30-18-30-57
This commit is contained in:
10
apply.sh
10
apply.sh
@ -1,6 +1,8 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
sudo rsync -ah --delete --progress `pwd`/ /root/nixos/
|
# sudo rsync -ah --delete --progress `pwd`/ /root/nixos/
|
||||||
sudo rm /etc/nixos/configuration.nix
|
# sudo rm /etc/nixos/configuration.nix
|
||||||
sudo ln -s /root/nixos/machine/`hostname`.nix /etc/nixos/configuration.nix
|
# sudo ln -s /root/nixos/machine/`hostname`.nix /etc/nixos/configuration.nix
|
||||||
sudo nixos-rebuild switch
|
# sudo nixos-rebuild switch
|
||||||
|
|
||||||
|
sudo nixos-rebuild switch --show-trace --flake ~/nixos-config/#`hostname`
|
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"defaultStrategy": "agile",
|
"defaultStrategy": "lazy",
|
||||||
"strategyOnDischarging": "",
|
"strategyOnDischarging": "",
|
||||||
"batteryChargingStatusPath": "",
|
"batteryChargingStatusPath": "",
|
||||||
"strategies": {
|
"strategies": {
|
||||||
|
@ -66,7 +66,7 @@
|
|||||||
btrfs-progs
|
btrfs-progs
|
||||||
|
|
||||||
cargo
|
cargo
|
||||||
# dog # different cat
|
# dog # cat replace
|
||||||
doggo # DNS Resolver
|
doggo # DNS Resolver
|
||||||
|
|
||||||
du-dust
|
du-dust
|
||||||
|
39
flake.lock
generated
39
flake.lock
generated
@ -1,5 +1,43 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"flake-compat": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696426674,
|
||||||
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"fw-fanctrl": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1724704488,
|
||||||
|
"narHash": "sha256-QmAanotjk81zsCwHI52XS4u9Cjv6KjNzTkYsAYFrubM=",
|
||||||
|
"owner": "TamtamHero",
|
||||||
|
"repo": "fw-fanctrl",
|
||||||
|
"rev": "db96c5962cff24f4c5977e30ca1c7626fb4171c7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "TamtamHero",
|
||||||
|
"ref": "packaging/nix",
|
||||||
|
"repo": "fw-fanctrl",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@ -71,6 +109,7 @@
|
|||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"fw-fanctrl": "fw-fanctrl",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
|
25
flake.nix
25
flake.nix
@ -12,9 +12,22 @@
|
|||||||
url = "github:nix-community/home-manager/release-24.05";
|
url = "github:nix-community/home-manager/release-24.05";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
fw-fanctrl = {
|
||||||
|
url = "github:TamtamHero/fw-fanctrl/packaging/nix";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, nixos-hardware, ... } @ inputs:
|
outputs =
|
||||||
|
{ self
|
||||||
|
, nixpkgs
|
||||||
|
, nixpkgs-unstable
|
||||||
|
, home-manager
|
||||||
|
, nixos-hardware
|
||||||
|
, fw-fanctrl
|
||||||
|
, ...
|
||||||
|
} @ inputs:
|
||||||
let
|
let
|
||||||
inherit (self) outputs;
|
inherit (self) outputs;
|
||||||
|
|
||||||
@ -42,6 +55,16 @@
|
|||||||
./machine/desktop.nix
|
./machine/desktop.nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
framework = nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
specialArgs = { inherit inputs outputs; };
|
||||||
|
modules = [
|
||||||
|
fw-fanctrl.nixosModules.default
|
||||||
|
./machine/framework.nix
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,6 @@ in
|
|||||||
];
|
];
|
||||||
# Configure your nixpkgs instance
|
# Configure your nixpkgs instance
|
||||||
config = {
|
config = {
|
||||||
# Disable if you don't want unfree packages
|
|
||||||
allowUnfree = true;
|
allowUnfree = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
39
machine/framework-hardware-configuration.nix
Normal file
39
machine/framework-hardware-configuration.nix
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
# 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 = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/5549d49d-165e-4a45-973e-6a32a63e31be";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
boot.initrd.luks.devices."luks-4f42a0a6-1f09-413c-8af3-9be8fc5c1b25".device = "/dev/disk/by-uuid/4f42a0a6-1f09-413c-8af3-9be8fc5c1b25";
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/20D2-E669";
|
||||||
|
fsType = "vfat";
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [ ];
|
||||||
|
|
||||||
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.wlp166s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
@ -1,14 +1,34 @@
|
|||||||
{ config, pkgs, lib, ... }:
|
{ config, pkgs, lib, outputs, inputs, ... }:
|
||||||
let
|
let
|
||||||
unstable = import <nixos-unstable> { config = { allowUnfree = true; }; };
|
|
||||||
be = import ../configs/borg-exclude.nix;
|
be = import ../configs/borg-exclude.nix;
|
||||||
secrets = import ../configs/secrets.nix;
|
secrets = import ../configs/secrets.nix;
|
||||||
wireguard = import ../configs/wireguard.nix;
|
wireguard = import ../configs/wireguard.nix;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
nixpkgs = {
|
||||||
|
overlays = [
|
||||||
|
outputs.overlays.additions
|
||||||
|
outputs.overlays.modifications
|
||||||
|
outputs.overlays.unstable-packages
|
||||||
|
|
||||||
|
# You can also add overlays exported from other flakes:
|
||||||
|
# neovim-nightly-overlay.overlays.default
|
||||||
|
|
||||||
|
# Or define it inline, for example:
|
||||||
|
# (final: prev: {
|
||||||
|
# hi = final.hello.overrideAttrs (oldAttrs: {
|
||||||
|
# patches = [ ./change-hello-to-hi.patch ];
|
||||||
|
# });
|
||||||
|
# })
|
||||||
|
];
|
||||||
|
config = {
|
||||||
|
allowUnfree = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
<nixos-hardware/framework/13-inch/12th-gen-intel>
|
./framework-hardware-configuration.nix
|
||||||
/etc/nixos/hardware-configuration.nix
|
inputs.nixos-hardware.nixosModules.framework-12th-gen-intel
|
||||||
../configs/browser.nix
|
../configs/browser.nix
|
||||||
../configs/common.nix
|
../configs/common.nix
|
||||||
../configs/docker.nix
|
../configs/docker.nix
|
||||||
@ -17,7 +37,6 @@ in
|
|||||||
../configs/plasma-wayland.nix
|
../configs/plasma-wayland.nix
|
||||||
../configs/user-gui.nix
|
../configs/user-gui.nix
|
||||||
../configs/user.nix
|
../configs/user.nix
|
||||||
/home/alex/Workspace/fw-fanctrl-nix/service.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
@ -28,13 +47,13 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
nixpkgs.config = {
|
# nixpkgs.config = {
|
||||||
allowUnfree = true;
|
# allowUnfree = true;
|
||||||
packageOverrides = pkgs: {
|
# packageOverrides = pkgs: {
|
||||||
intel-vaapi-driver =
|
# intel-vaapi-driver =
|
||||||
pkgs.intel-vaapi-driver.override { enableHybridCodec = true; };
|
# pkgs.intel-vaapi-driver.override { enableHybridCodec = true; };
|
||||||
};
|
# };
|
||||||
};
|
# };
|
||||||
|
|
||||||
# nixpkgs.localSystem = {
|
# nixpkgs.localSystem = {
|
||||||
# gcc.arch = "alderlake";
|
# gcc.arch = "alderlake";
|
||||||
@ -46,24 +65,31 @@ in
|
|||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
hostName = "framework";
|
hostName = "framework";
|
||||||
# wireguard.interfaces = {
|
|
||||||
# wg0 = {
|
|
||||||
# ips = [ "10.100.0.7/24" ];
|
|
||||||
# privateKey = secrets.wireguard-framework-private;
|
|
||||||
|
|
||||||
# peers = [{
|
|
||||||
# publicKey = wireguard.wireguard-vps-public;
|
|
||||||
# presharedKey = secrets.wireguard-preshared;
|
|
||||||
# allowedIPs = [ "10.100.0.0/24" ];
|
|
||||||
# endpoint = "old.szczepan.ski:51820";
|
|
||||||
# persistentKeepalive = 25;
|
|
||||||
# }];
|
|
||||||
# };
|
|
||||||
# };
|
|
||||||
};
|
};
|
||||||
|
|
||||||
time.timeZone = "Europe/Berlin";
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
|
programs.fw-fanctrl = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
defaultStrategy = "lazy";
|
||||||
|
strategies = {
|
||||||
|
"lazy" = {
|
||||||
|
fanSpeedUpdateFrequency = 5;
|
||||||
|
movingAverageInterval = 30;
|
||||||
|
speedCurve = [
|
||||||
|
{ temp = 0; speed = 15; }
|
||||||
|
{ temp = 50; speed = 15; }
|
||||||
|
{ temp = 65; speed = 25; }
|
||||||
|
{ temp = 70; speed = 35; }
|
||||||
|
{ temp = 75; speed = 50; }
|
||||||
|
{ temp = 85; speed = 100; }
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
keyboard.qmk.enable = true;
|
keyboard.qmk.enable = true;
|
||||||
enableAllFirmware = true;
|
enableAllFirmware = true;
|
||||||
@ -91,16 +117,6 @@ in
|
|||||||
|
|
||||||
fwupd.enable = true;
|
fwupd.enable = true;
|
||||||
|
|
||||||
fw-fanctrl = {
|
|
||||||
enable = true;
|
|
||||||
configJsonPath = "/home/alex/nixos-config/config.json";
|
|
||||||
};
|
|
||||||
|
|
||||||
# displayManager.autoLogin = {
|
|
||||||
# enable = true;
|
|
||||||
# user = "alex";
|
|
||||||
# };
|
|
||||||
|
|
||||||
pipewire = {
|
pipewire = {
|
||||||
enable = true;
|
enable = true;
|
||||||
alsa.enable = true;
|
alsa.enable = true;
|
||||||
@ -168,7 +184,7 @@ in
|
|||||||
|
|
||||||
# systemd.services.nix-daemon.serviceConfig.LimitNOFILE = 40960;
|
# systemd.services.nix-daemon.serviceConfig.LimitNOFILE = 40960;
|
||||||
|
|
||||||
environment.systemPackages = with unstable.pkgs; [
|
environment.systemPackages = with pkgs.unstable; [
|
||||||
psensor
|
psensor
|
||||||
veracrypt
|
veracrypt
|
||||||
gnumake
|
gnumake
|
||||||
@ -185,7 +201,6 @@ in
|
|||||||
homebank
|
homebank
|
||||||
# fahviewer
|
# fahviewer
|
||||||
# fahcontrol
|
# fahcontrol
|
||||||
(import ("/home/alex/Workspace/fw-ectool/default.nix"))
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# Set up deep sleep + hibernation
|
# Set up deep sleep + hibernation
|
||||||
|
@ -61,8 +61,6 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
goaccess
|
goaccess
|
||||||
xd
|
xd
|
||||||
|
Reference in New Issue
Block a user