From 2d2d3ee72de56eef559dcb6baff2a210fcd09d2e Mon Sep 17 00:00:00 2001 From: nyanloutre Date: Wed, 3 Nov 2021 21:44:09 +0100 Subject: [PATCH] use flake-utils-plus --- flake.lock | 37 ++++++++++++++++++++++++++++++- flake.nix | 50 +++++++++++++++++++++--------------------- ipmihddtemp.py | 42 ----------------------------------- systems/common-cli.nix | 7 ------ 4 files changed, 61 insertions(+), 75 deletions(-) delete mode 100644 ipmihddtemp.py diff --git a/flake.lock b/flake.lock index bf3df90..5dcdd20 100644 --- a/flake.lock +++ b/flake.lock @@ -21,6 +21,21 @@ "type": "gitlab" } }, + "flake-utils": { + "locked": { + "lastModified": 1629481132, + "narHash": "sha256-JHgasjPR0/J1J3DRm4KxM4zTyAj4IOJY8vIl75v/kPI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "997f7efcb746a9c140ce1f13c72263189225f482", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "ipmihddtemp": { "inputs": { "nixpkgs": [ @@ -78,7 +93,8 @@ "ipmihddtemp": "ipmihddtemp", "nixpkgs": "nixpkgs", "nixpkgs-unstable": "nixpkgs-unstable", - "simple-nixos-mailserver": "simple-nixos-mailserver" + "simple-nixos-mailserver": "simple-nixos-mailserver", + "utils": "utils_2" } }, "simple-nixos-mailserver": { @@ -117,6 +133,25 @@ "repo": "flake-utils", "type": "github" } + }, + "utils_2": { + "inputs": { + "flake-utils": "flake-utils" + }, + "locked": { + "lastModified": 1630860118, + "narHash": "sha256-JwLcC/zRR6ypk4/Ks7plWBvThYoLhURaH2zvjuWVmyA=", + "owner": "gytis-ivaskevicius", + "repo": "flake-utils-plus", + "rev": "813281281363ec45af155c8d2ceb7c5132d4de45", + "type": "github" + }, + "original": { + "owner": "gytis-ivaskevicius", + "ref": "1.3.0", + "repo": "flake-utils-plus", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index f1d0adf..4f6e88b 100644 --- a/flake.nix +++ b/flake.nix @@ -2,6 +2,7 @@ inputs = { nixpkgs.url = "flake:nixpkgs/nixos-21.05"; nixpkgs-unstable.url = "flake:nixpkgs/nixos-unstable"; + utils.url = "github:gytis-ivaskevicius/flake-utils-plus/1.3.0"; simple-nixos-mailserver = { url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-21.05"; inputs.nixpkgs.follows = "nixpkgs"; @@ -16,33 +17,32 @@ }; }; - outputs = { self, nixpkgs, nixpkgs-unstable, simple-nixos-mailserver, dogetipbot-telegram, ipmihddtemp }: { - nixosConfigurations.loutreos = nixpkgs.lib.nixosSystem { - system = "x86_64-linux"; - modules = [ - ({ pkgs, ... }: { - nix.nixPath = [ - "nixpkgs=${nixpkgs}" - ]; - }) - nixpkgs.nixosModules.notDetected - "${nixpkgs-unstable}/nixos/modules/services/audio/navidrome.nix" - simple-nixos-mailserver.nixosModule - dogetipbot-telegram.nixosModule - ipmihddtemp.nixosModule - ./systems/LoutreOS/configuration.nix - ]; - }; + outputs = inputs@{ self, utils, nixpkgs, nixpkgs-unstable, simple-nixos-mailserver, dogetipbot-telegram, ipmihddtemp }: utils.lib.mkFlake { - nixosConfigurations.paul-fixe = nixpkgs-unstable.lib.nixosSystem { - system = "x86_64-linux"; + inherit self inputs; + + supportedSystems = [ "x86_64-linux" ]; + + hostDefaults.modules = [ + nixpkgs.nixosModules.notDetected + { + nix.generateRegistryFromInputs = true; + nix.linkInputs = true; + nix.generateNixPathFromInputs = true; + } + ]; + + hosts.loutreos.modules = [ + "${nixpkgs-unstable}/nixos/modules/services/audio/navidrome.nix" + simple-nixos-mailserver.nixosModule + dogetipbot-telegram.nixosModule + ipmihddtemp.nixosModule + ./systems/LoutreOS/configuration.nix + ]; + + hosts.paul-fixe = { + channelName = "nixpkgs-unstable"; modules = [ - ({ pkgs, ... }: { - nix.nixPath = [ - "nixpkgs=${nixpkgs-unstable}" - ]; - }) - nixpkgs-unstable.nixosModules.notDetected ./systems/PC-Fixe/configuration.nix ]; }; diff --git a/ipmihddtemp.py b/ipmihddtemp.py deleted file mode 100644 index ee7e21f..0000000 --- a/ipmihddtemp.py +++ /dev/null @@ -1,42 +0,0 @@ -import math -import subprocess -import time -from pySMART import DeviceList - -MIN_FAN_SPEED = 30 -MAX_FAN_SPEED = 100 - -MIN_HDD_TEMP = 30 -MAX_HDD_TEMP = 50 - -devlist = DeviceList() - -# Put fans in full speed mode -subprocess.run(["ipmitool", "raw", "0x30", "0x45", "0x01", "0x01"]) - -while True: - for device in devlist: - device.update() - - # Linear fan speed between MIN_FAN_SPEED and MAX_FAN_SPEED - fan_speed = max( - min( - math.ceil( - MIN_FAN_SPEED - + ( - (MAX_FAN_SPEED - MIN_FAN_SPEED) - * ( - (max([x.temperature for x in devlist]) - MIN_HDD_TEMP) - / (MAX_HDD_TEMP - MIN_HDD_TEMP) - ) - ) - ), - MAX_FAN_SPEED, - ), - MIN_FAN_SPEED, - ) - - subprocess.run(["ipmitool", "raw", "0x30", "0x70", "0x66", "0x01", "0x00", hex(fan_speed)]) - - time.sleep(10) - diff --git a/systems/common-cli.nix b/systems/common-cli.nix index 8ab6562..756a953 100644 --- a/systems/common-cli.nix +++ b/systems/common-cli.nix @@ -4,13 +4,6 @@ time.timeZone = "Europe/Paris"; - nix = { - package = pkgs.nixUnstable; - extraOptions = '' - experimental-features = nix-command flakes - ''; - }; - environment.systemPackages = with pkgs; [ # Editeurs (neovim.override {