diff --git a/flake.nix b/flake.nix index de50258..a18e81f 100644 --- a/flake.nix +++ b/flake.nix @@ -5,33 +5,42 @@ nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; }; - outputs = { - self, - nixpkgs, - }: let - inherit (nixpkgs) lib; + outputs = + { + self, + nixpkgs, + }: + let + inherit (nixpkgs) lib; - systems = ["x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin"]; + systems = [ + "x86_64-linux" + "aarch64-linux" + "x86_64-darwin" + "aarch64-darwin" + ]; - pkgsFor = system: import nixpkgs {inherit system;}; - forEachSystem = lib.genAttrs systems; - in { - packages = forEachSystem ( - system: let - pkgs = pkgsFor system; - isAvailable = name: drv: lib.meta.availableOn {inherit system;} drv; - flakePkgs = self.overlays.default {} pkgs; - in + pkgsFor = system: import nixpkgs { inherit system; }; + forEachSystem = lib.genAttrs systems; + in + { + packages = forEachSystem ( + system: + let + pkgs = pkgsFor system; + isAvailable = name: drv: lib.meta.availableOn { inherit system; } drv; + flakePkgs = self.overlays.default { } pkgs; + in lib.filterAttrs isAvailable flakePkgs - ); + ); - overlays.default = import ./pkgs/all-packages.nix; + overlays.default = import ./pkgs/all-packages.nix; - nixosModules = { - reposilite = import ./modules/reposilite.nix; - asus-numpad = import ./modules/asus-numpad.nix self; + nixosModules = { + reposilite = import ./modules/reposilite.nix; + asus-numpad = import ./modules/asus-numpad.nix self; + }; + + formatter = forEachSystem (system: (pkgsFor system).nixfmt-rfc-style); }; - - formatter = forEachSystem (system: (pkgsFor system).alejandra); - }; } diff --git a/modules/asus-numpad.nix b/modules/asus-numpad.nix index e52ded2..76c2577 100644 --- a/modules/asus-numpad.nix +++ b/modules/asus-numpad.nix @@ -1,27 +1,39 @@ -self: { +self: +{ lib, config, pkgs, ... -}: let +}: +let cfg = config.services.asus-numpad; inherit (pkgs.stdenv.hostPlatform) system; - toml = pkgs.formats.toml {}; -in { + toml = pkgs.formats.toml { }; +in +{ options.services.asus-numpad = { enable = lib.mkEnableOption "asus-numpad"; - package = lib.mkPackageOption self.packages.${system} "asus-numpad" {}; + package = lib.mkPackageOption self.packages.${system} "asus-numpad" { }; settings = lib.mkOption { description = "Options for the configuration file located at /etc/xdg/asus_numpad.toml. See https://github.com/iamkroot/asus-numpad#configuration"; - example = {layout = "M433IA";}; + example = { + layout = "M433IA"; + }; type = lib.types.submodule { freeformType = toml.type; options.layout = lib.mkOption { description = "Numpad key layout."; - type = lib.types.enum ["UX433FA" "M433IA" "UX581" "GX701" "GX531" "G533"]; + type = lib.types.enum [ + "UX433FA" + "M433IA" + "UX581" + "GX701" + "GX531" + "G533" + ]; }; }; }; @@ -37,7 +49,7 @@ in { systemd.services.asus-numpad = { enable = true; - wantedBy = ["multi-user.target"]; + wantedBy = [ "multi-user.target" ]; script = '' ${lib.getExe cfg.package} ''; diff --git a/modules/reposilite.nix b/modules/reposilite.nix index 92596d4..f05da1a 100644 --- a/modules/reposilite.nix +++ b/modules/reposilite.nix @@ -3,12 +3,14 @@ config, pkgs, ... -}: let +}: +let cfg = config.services.reposilite; -in { +in +{ options.services.reposilite = { enable = lib.mkEnableOption "reposilite"; - package = lib.mkPackageOption pkgs "reposilite" {}; + package = lib.mkPackageOption pkgs "reposilite" { }; environmentFile = lib.mkOption { description = lib.mdDoc '' Environment file as defined in {manpage}`systemd.exec(5)` @@ -28,13 +30,13 @@ in { group = "reposilite"; }; - groups.reposilite = {}; + groups.reposilite = { }; }; systemd.services."reposilite" = { enable = true; - wantedBy = lib.mkDefault ["multi-user.target"]; - after = lib.mkDefault ["network.target"]; + wantedBy = lib.mkDefault [ "multi-user.target" ]; + after = lib.mkDefault [ "network.target" ]; script = '' ${lib.getExe cfg.package} ''; diff --git a/pkgs/all-packages.nix b/pkgs/all-packages.nix index dd096f5..33d0196 100644 --- a/pkgs/all-packages.nix +++ b/pkgs/all-packages.nix @@ -1,8 +1,8 @@ final: prev: { - enigma = prev.callPackage ./enigma.nix {}; - vineflower = prev.callPackage ./vineflower.nix {}; - koi = prev.kdePackages.callPackage ./koi.nix {}; - asus-numpad = prev.callPackage ./asus-numpad.nix {}; - openwebstart = prev.callPackage ./openwebstart.nix {}; - json2cdn = prev.callPackage ./json2cdn/package.nix {}; + enigma = prev.callPackage ./enigma.nix { }; + vineflower = prev.callPackage ./vineflower.nix { }; + koi = prev.kdePackages.callPackage ./koi.nix { }; + asus-numpad = prev.callPackage ./asus-numpad.nix { }; + openwebstart = prev.callPackage ./openwebstart.nix { }; + json2cdn = prev.callPackage ./json2cdn/package.nix { }; } diff --git a/pkgs/enigma.nix b/pkgs/enigma.nix index cff8462..6366a11 100644 --- a/pkgs/enigma.nix +++ b/pkgs/enigma.nix @@ -11,13 +11,18 @@ stdenv.mkDerivation (finalAttrs: { version = "2.5.0"; src = fetchurl { - url = with finalAttrs; "https://maven.fabricmc.net/cuchaz/enigma-swing/${version}/enigma-swing-${version}-all.jar"; + url = + with finalAttrs; + "https://maven.fabricmc.net/cuchaz/enigma-swing/${version}/enigma-swing-${version}-all.jar"; hash = "sha256-yOPPTKt96aRSbziYDBLBKqfLS2R9GeXgz5m2t1fgFHo="; }; dontUnpack = true; - nativeBuildInputs = [makeWrapper copyDesktopItems]; + nativeBuildInputs = [ + makeWrapper + copyDesktopItems + ]; installPhase = with finalAttrs; '' runHook preInstall diff --git a/pkgs/json2cdn/package.nix b/pkgs/json2cdn/package.nix index 026642d..0abdb97 100644 --- a/pkgs/json2cdn/package.nix +++ b/pkgs/json2cdn/package.nix @@ -5,7 +5,8 @@ makeWrapper, gradle_8, jre_headless, -}: let +}: +let self = stdenv.mkDerivation (finalAttrs: { pname = "json2cdn"; version = "0.1.0"; @@ -17,7 +18,10 @@ hash = "sha256-pHmzeZHZyr3FyfkXwrdPk+lcHQKH6t4pnDD9ImMgSV8="; }; - nativeBuildInputs = [gradle_8 makeWrapper]; + nativeBuildInputs = [ + gradle_8 + makeWrapper + ]; mitmCache = gradle_8.fetchDeps { pkg = self; @@ -42,12 +46,15 @@ meta = { description = "converts a json file to dzikoysk's cdn format"; homepage = "https://github.com/uku3lig/json2cdn"; - sourceProvenance = with lib.sourceTypes; [fromSource binaryBytecode]; + sourceProvenance = with lib.sourceTypes; [ + fromSource + binaryBytecode + ]; license = lib.licenses.mit; - maintainers = with lib.maintainers; [uku3lig]; + maintainers = with lib.maintainers; [ uku3lig ]; inherit (jre_headless.meta) platforms; mainProgram = "json2cdn"; }; }); in - self +self diff --git a/pkgs/koi.nix b/pkgs/koi.nix index 3188b88..f7c6cd5 100644 --- a/pkgs/koi.nix +++ b/pkgs/koi.nix @@ -24,8 +24,18 @@ stdenv.mkDerivation (finalAttrs: { sourceRoot = "source/src"; - nativeBuildInputs = [cmake ninja wrapQtAppsHook]; - buildInputs = [qtbase qtwayland kcoreaddons kwidgetsaddons kconfig]; + nativeBuildInputs = [ + cmake + ninja + wrapQtAppsHook + ]; + buildInputs = [ + qtbase + qtwayland + kcoreaddons + kwidgetsaddons + kconfig + ]; meta = { mainProgram = "koi"; diff --git a/pkgs/openwebstart.nix b/pkgs/openwebstart.nix index e2f200b..f65b600 100644 --- a/pkgs/openwebstart.nix +++ b/pkgs/openwebstart.nix @@ -12,11 +12,19 @@ stdenv.mkDerivation (finalAttrs: { version = "1.5.2"; src = fetchurl { - url = with finalAttrs; "https://github.com/karakun/OpenWebStart/releases/download/v${version}/OpenWebStart_linux_${builtins.replaceStrings ["."] ["_"] version}.deb"; + url = + with finalAttrs; + "https://github.com/karakun/OpenWebStart/releases/download/v${version}/OpenWebStart_linux_${ + builtins.replaceStrings [ "." ] [ "_" ] version + }.deb"; hash = "sha256-thB/JWbF/Xk/PLurwXvWwzQTyCeV1hU7Zm8BjrG6lS0="; }; - nativeBuildInputs = [dpkg makeWrapper copyDesktopItems]; + nativeBuildInputs = [ + dpkg + makeWrapper + copyDesktopItems + ]; unpackCmd = "dpkg-deb -x $src ."; sourceRoot = "opt/OpenWebStart"; @@ -57,7 +65,7 @@ stdenv.mkDerivation (finalAttrs: { noDisplay = true; exec = "openwebstart %f"; icon = "openwebstart-settings"; - mimeTypes = ["application/x-java-jnlp-file"]; + mimeTypes = [ "application/x-java-jnlp-file" ]; }) ]; diff --git a/pkgs/vineflower.nix b/pkgs/vineflower.nix index 6456b94..e399891 100644 --- a/pkgs/vineflower.nix +++ b/pkgs/vineflower.nix @@ -9,11 +9,13 @@ stdenv.mkDerivation (finalAttrs: { version = "1.10.1"; src = fetchurl { - url = with finalAttrs; "https://github.com/Vineflower/vineflower/releases/download/${version}/vineflower-${version}.jar"; + url = + with finalAttrs; + "https://github.com/Vineflower/vineflower/releases/download/${version}/vineflower-${version}.jar"; hash = "sha256-ubII5QeTtkZXprYpIGdSZhP1Sd50BfkkNiSwL0J25Ak="; }; - nativeBuildInputs = [makeWrapper]; + nativeBuildInputs = [ makeWrapper ]; dontUnpack = true;