diff --git a/flake.nix b/flake.nix index d7e1de5..22359e7 100644 --- a/flake.nix +++ b/flake.nix @@ -3,36 +3,33 @@ inputs = { nixpkgs.url = "nixpkgs/nixpkgs-unstable"; }; - outputs = - { self, nixpkgs, ... }: + outputs = { self, nixpkgs, ... }: let # DayZ only runs on x86_64 systems system = "x86_64-linux"; - pkgs = import nixpkgs { inherit system; }; + pkgs = import nixpkgs { + inherit system; + overlays = [ self.overlays.default ]; + }; in - { + with pkgs; { packages.${system} = rec { default = dzgui; - dzgui = pkgs.callPackage ./package { }; + inherit (pkgs) dzgui; }; overlays = { - default = import ./overlay.nix; + default = (final: _: { + dzgui = (final.callPackage ./package { }); + }); }; nixosModules = rec { default = dzgui; - dzgui = import ./module.nix; + dzgui = import ./module.nix { inherit self; }; }; - devShells.${system}.default = pkgs.mkShell { - buildInputs = self.packages.${system}.default.runtimeDeps; - }; - - checks.${system}.nixosCheck = - (nixpkgs.lib.nixosSystem { - inherit system; - modules = [ ./nixos-test/configuration.nix ]; - }).config.system.build.toplevel; + devShells.${system}.default = + mkShell { buildInputs = self.packages.${system}.default.runtimeDeps; }; }; } diff --git a/module.nix b/module.nix index 1f957e2..f72f285 100644 --- a/module.nix +++ b/module.nix @@ -1,29 +1,25 @@ -{ - pkgs, - config, - lib, - ... -}: +{ self, ... }: +{ pkgs, config, lib, ... }: +with lib; let cfg = config.programs.dzgui; in { options.programs.dzgui = { - enable = lib.mkEnableOption ( - lib.mdDoc '' - Weather to install dzgui and setup workarounds for DayZ to work on linux - '' - ); - package = lib.mkOption { - type = with lib.types; nullOr package; - default = pkgs.callPackage ./package { }; - defaultText = lib.literalExpression "pkgs.dzgui"; - description = lib.mdDoc "Dzgui package to use."; + enable = mkEnableOption (mdDoc '' + Weather to install dzgui and setup workarounds for DayZ to work on linux + ''); + package = mkOption { + type = with types; nullOr package; + default = pkgs.dzgui; + defaultText = literalExpression "pkgs.dzgui"; + description = mdDoc "Dzgui package to use."; }; }; - config = lib.mkIf cfg.enable { + config = mkIf cfg.enable { # Needed by DayZ boot.kernel.sysctl."vm.max_map_count" = 1048576; + nixpkgs.overlays = [ self.overlays.default ]; environment.systemPackages = [ cfg.package ]; }; } diff --git a/nixos-test/configuration.nix b/nixos-test/configuration.nix deleted file mode 100644 index 302d4d3..0000000 --- a/nixos-test/configuration.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ - imports = [ ../module.nix ]; - programs.dzgui.enable = true; - - boot.isContainer = true; - system.stateVersion = "24.05"; -} diff --git a/overlay.nix b/overlay.nix deleted file mode 100644 index a431f2a..0000000 --- a/overlay.nix +++ /dev/null @@ -1 +0,0 @@ -(final: _: { dzgui = (final.callPackage ./package { }); }) diff --git a/package/default.nix b/package/default.nix index 133eb3e..d5376ab 100644 --- a/package/default.nix +++ b/package/default.nix @@ -1,16 +1,15 @@ -{ - lib, - stdenv, - fetchFromGitHub, - makeWrapper, - curl, - jq, - python3, - wmctrl, - xdotool, - gnome, - gobject-introspection, - wrapGAppsHook, +{ lib +, stdenv +, fetchFromGitHub +, makeWrapper +, curl +, jq +, python3 +, wmctrl +, xdotool +, gnome +, gobject-introspection +, wrapGAppsHook }: stdenv.mkDerivation rec { pname = "dzgui"; @@ -39,7 +38,9 @@ stdenv.mkDerivation rec { runtimeDeps = [ curl jq - (python3.withPackages (p: with p; [ pygobject3 ])) + (python3.withPackages (p: with p; [ + pygobject3 + ])) wmctrl xdotool