thaaaaanks jeremy
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -1,3 +1,5 @@
|
|||||||
!.idea
|
!.idea
|
||||||
cmake-build*
|
cmake-build*
|
||||||
build
|
build
|
||||||
|
/imgui.ini
|
||||||
|
result
|
||||||
|
|||||||
@@ -1,53 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
stdenv,
|
|
||||||
cmake,
|
|
||||||
ncurses,
|
|
||||||
SDL2,
|
|
||||||
libGL,
|
|
||||||
xorg,
|
|
||||||
installShellFiles,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
cmakeContent = builtins.readFile ./CMakeLists.txt;
|
|
||||||
cmakeLines = lib.splitString "\n" cmakeContent;
|
|
||||||
versionLine = lib.findFirst (l: builtins.match ".*set\\(KTE_VERSION \".+\"\\).*" l != null) (throw "KTE_VERSION not found in CMakeLists.txt") cmakeLines;
|
|
||||||
version = builtins.head (builtins.match ".*set\\(KTE_VERSION \"(.+)\"\\).*" versionLine);
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
pname = "kte";
|
|
||||||
inherit version;
|
|
||||||
|
|
||||||
src = lib.cleanSource ./.;
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
cmake
|
|
||||||
ncurses
|
|
||||||
SDL2
|
|
||||||
libGL
|
|
||||||
xorg.libX11
|
|
||||||
installShellFiles
|
|
||||||
];
|
|
||||||
|
|
||||||
cmakeFlags = [
|
|
||||||
"-DBUILD_GUI=ON"
|
|
||||||
"-DCMAKE_BUILD_TYPE=Debug"
|
|
||||||
];
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/bin
|
|
||||||
cp kte $out/bin/
|
|
||||||
cp kge $out/bin/
|
|
||||||
|
|
||||||
installManPage ../docs/kte.1
|
|
||||||
installManPage ../docs/kge.1
|
|
||||||
|
|
||||||
mkdir -p $out/share/icons
|
|
||||||
cp ../kge.png $out/share/icons/
|
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
{
|
|
||||||
lib,
|
|
||||||
stdenv,
|
|
||||||
cmake,
|
|
||||||
ncurses,
|
|
||||||
installShellFiles,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
let
|
|
||||||
cmakeContent = builtins.readFile ./CMakeLists.txt;
|
|
||||||
cmakeLines = lib.splitString "\n" cmakeContent;
|
|
||||||
versionLine = lib.findFirst (l: builtins.match ".*set\\(KTE_VERSION \".+\"\\).*" l != null) (throw "KTE_VERSION not found in CMakeLists.txt") cmakeLines;
|
|
||||||
version = builtins.head (builtins.match ".*set\\(KTE_VERSION \"(.+)\"\\).*" versionLine);
|
|
||||||
in
|
|
||||||
stdenv.mkDerivation {
|
|
||||||
pname = "kte";
|
|
||||||
inherit version;
|
|
||||||
|
|
||||||
src = lib.cleanSource ./.;
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
|
||||||
cmake
|
|
||||||
ncurses
|
|
||||||
installShellFiles
|
|
||||||
];
|
|
||||||
|
|
||||||
cmakeFlags = [
|
|
||||||
"-DBUILD_GUI=OFF"
|
|
||||||
"-DCMAKE_BUILD_TYPE=Debug"
|
|
||||||
];
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
|
|
||||||
mkdir -p $out/bin
|
|
||||||
cp kte $out/bin/
|
|
||||||
|
|
||||||
installManPage ../docs/kte.1
|
|
||||||
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
}
|
|
||||||
21
default.nix
21
default.nix
@@ -7,12 +7,16 @@
|
|||||||
libGL,
|
libGL,
|
||||||
xorg,
|
xorg,
|
||||||
installShellFiles,
|
installShellFiles,
|
||||||
|
|
||||||
|
graphical ? true,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
cmakeContent = builtins.readFile ./CMakeLists.txt;
|
cmakeContent = builtins.readFile ./CMakeLists.txt;
|
||||||
cmakeLines = lib.splitString "\n" cmakeContent;
|
cmakeLines = lib.splitString "\n" cmakeContent;
|
||||||
versionLine = lib.findFirst (l: builtins.match ".*set\\(KTE_VERSION \".+\"\\).*" l != null) (throw "KTE_VERSION not found in CMakeLists.txt") cmakeLines;
|
versionLine = lib.findFirst (
|
||||||
|
l: builtins.match ".*set\\(KTE_VERSION \".+\"\\).*" l != null
|
||||||
|
) (throw "KTE_VERSION not found in CMakeLists.txt") cmakeLines;
|
||||||
version = builtins.head (builtins.match ".*set\\(KTE_VERSION \"(.+)\"\\).*" versionLine);
|
version = builtins.head (builtins.match ".*set\\(KTE_VERSION \"(.+)\"\\).*" versionLine);
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
@@ -24,14 +28,16 @@ stdenv.mkDerivation {
|
|||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
cmake
|
cmake
|
||||||
ncurses
|
ncurses
|
||||||
|
installShellFiles
|
||||||
|
]
|
||||||
|
++ lib.optionals graphical [
|
||||||
SDL2
|
SDL2
|
||||||
libGL
|
libGL
|
||||||
xorg.libX11
|
xorg.libX11
|
||||||
installShellFiles
|
|
||||||
];
|
];
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
"-DBUILD_GUI=ON"
|
"-DBUILD_GUI=${if graphical then "ON" else "OFF"}"
|
||||||
"-DCMAKE_BUILD_TYPE=Debug"
|
"-DCMAKE_BUILD_TYPE=Debug"
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -40,14 +46,17 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
cp kte $out/bin/
|
cp kte $out/bin/
|
||||||
cp kge $out/bin/
|
|
||||||
|
|
||||||
installManPage ../docs/kte.1
|
installManPage ../docs/kte.1
|
||||||
installManPage ../docs/kge.1
|
|
||||||
|
|
||||||
|
''
|
||||||
|
+ lib.optionalString graphical ''
|
||||||
|
cp kge $out/bin/
|
||||||
|
installManPage ../docs/kge.1
|
||||||
mkdir -p $out/share/icons
|
mkdir -p $out/share/icons
|
||||||
cp ../kge.png $out/share/icons/
|
cp ../kge.png $out/share/icons/
|
||||||
|
''
|
||||||
|
+ ''
|
||||||
runHook postInstall
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|||||||
18
flake.nix
18
flake.nix
@@ -3,16 +3,18 @@
|
|||||||
|
|
||||||
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
|
|
||||||
outputs = inputs @ { self, nixpkgs, ... }:
|
outputs =
|
||||||
|
inputs@{ self, nixpkgs, ... }:
|
||||||
let
|
let
|
||||||
eachSystem = nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed;
|
eachSystem = nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed;
|
||||||
pkgsFor = system: import nixpkgs { inherit system; };
|
pkgsFor = system: import nixpkgs { inherit system; };
|
||||||
in {
|
in
|
||||||
packages = eachSystem (system: {
|
{
|
||||||
default = (pkgsFor system).callPackage ./default-nogui.nix { };
|
packages = eachSystem (system: rec {
|
||||||
kge = (pkgsFor system).callPackage ./default-gui.nix { };
|
default = kte;
|
||||||
kte = (pkgsFor system).callPackage ./default-nogui.nix { };
|
full = kge;
|
||||||
full = (pkgsFor system).callPackage ./default.nix { };
|
kte = (pkgsFor system).callPackage ./default.nix { graphical = false; };
|
||||||
|
kge = (pkgsFor system).callPackage ./default.nix { graphical = true; };
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user