Turn into flake
This commit is contained in:
parent
6806a90b38
commit
aa8cb1fe2c
6 changed files with 75 additions and 3 deletions
48
flake.nix
Normal file
48
flake.nix
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
outputs = { self, nixpkgs }:
|
||||
let forAllSystems = nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed;
|
||||
in {
|
||||
packages = forAllSystems (system:
|
||||
let pkgs = import nixpkgs { inherit system; };
|
||||
in rec {
|
||||
default = antigrav;
|
||||
antigrav = pkgs.stdenv.mkDerivation {
|
||||
pname = "antigrav";
|
||||
version = "2016-07-13";
|
||||
src = ./.;
|
||||
|
||||
nativeBuildInputs = with pkgs; [ copyDesktopItems ];
|
||||
buildInputs = with pkgs; [ SDL2 openal libpng libGLU freealut ];
|
||||
|
||||
# https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/setup-hooks/copy-desktop-items.sh
|
||||
# https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/make-desktopitem/default.nix
|
||||
#
|
||||
# https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#recognized-keys
|
||||
# https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
|
||||
#
|
||||
# Available categories:
|
||||
# https://specifications.freedesktop.org/menu-spec/latest/apa.html
|
||||
# https://specifications.freedesktop.org/menu-spec/latest/apas02.html
|
||||
desktopItems = [
|
||||
(pkgs.makeDesktopItem {
|
||||
name = "antigravitaattori";
|
||||
icon = "antigravitaattori";
|
||||
exec = "antigrav -f -r 1920";
|
||||
desktopName = "Antigravitaattori";
|
||||
categories = [ "Game" "ArcadeGame" ];
|
||||
})
|
||||
];
|
||||
|
||||
postInstall = "install -D ${./icon_256.png} $out/share/icons/hicolor/256x256/apps/antigravitaattori.png";
|
||||
|
||||
# SDL files are imported directly as "SDL_xyz.h", not as "SDL2/SDL_xyz.h"
|
||||
NIX_CFLAGS_COMPILE = "-I${pkgs.lib.getDev pkgs.SDL2}/include/SDL2";
|
||||
|
||||
# Antigrav calls printf with a string constant instead of a literal.
|
||||
# https://nixos.org/manual/nixpkgs/stable/#sec-hardening-flags-enabled-by-default
|
||||
hardeningDisable = [ "format" ];
|
||||
};
|
||||
}
|
||||
);
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue