summaryrefslogtreecommitdiffstats
path: root/flake.nix
diff options
context:
space:
mode:
authorMinijackson <minijackson@riseup.net>2023-02-03 09:49:00 +0100
committerMinijackson <minijackson@riseup.net>2023-03-02 15:23:21 +0100
commit1535dea8ab8e0a5a9d00664de3509db84c1908a9 (patch)
treea1731bbad2e16d64977d27ad74e020de9b3e0ee6 /flake.nix
parent83a5f2817348f998a2e4e314ed3a8454f4553538 (diff)
downloaddiaphragm-1535dea8ab8e0a5a9d00664de3509db84c1908a9.tar.gz
diaphragm-1535dea8ab8e0a5a9d00664de3509db84c1908a9.zip
flake: package diaphragm
Diffstat (limited to 'flake.nix')
-rw-r--r--flake.nix34
1 files changed, 31 insertions, 3 deletions
diff --git a/flake.nix b/flake.nix
index b247db4..143af85 100644
--- a/flake.nix
+++ b/flake.nix
@@ -1,18 +1,45 @@
1{ 1{
2 description = "Generate constraint-based diagrams";
3
2 inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-22.11"; 4 inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-22.11";
5 inputs.naersk.url = "github:nix-community/naersk";
3 6
4 outputs = { 7 outputs = {
5 self, 8 self,
6 nixpkgs, 9 nixpkgs,
10 naersk,
7 }: let 11 }: let
8 pkgs = nixpkgs.legacyPackages.x86_64-linux; 12 pkgs = import nixpkgs {
13 overlays = [self.overlays.default];
14 localSystem = "x86_64-linux";
15 };
16 naersk-lib = pkgs.callPackage naersk {};
9 in { 17 in {
10 devShell.x86_64-linux = pkgs.mkShell { 18 overlays.default = final: prev: {
19 diaphragm = final.lua5_4.passthru.pkgs.toLuaModule (naersk-lib.buildPackage {
20 src = ./.;
21 nativeBuildInputs = with final; [pkg-config rustPlatform.bindgenHook];
22 buildInputs = with final; [pango z3];
23
24 copyBins = false;
25 copyLibs = true;
26
27 postInstall = ''
28 mkdir -p $out/lib/lua/5.4 $out/share/lua/5.4
11 29
30 mv $out/lib/libdiaphragm.so $out/lib/lua/5.4
31 cp $src/lua-bindings/diaphragm.lua $out/share/lua/5.4/
32 '';
33 });
34 };
35
36 packages.x86_64-linux.default = pkgs.diaphragm;
37
38 devShell.x86_64-linux = pkgs.mkShell {
12 LIBCLANG_PATH = "${pkgs.llvmPackages.libclang.lib}/lib"; 39 LIBCLANG_PATH = "${pkgs.llvmPackages.libclang.lib}/lib";
13 40
14 buildInputs = with pkgs; [ 41 buildInputs = with pkgs; [
15 pkgconfig 42 pkg-config
16 cairo 43 cairo
17 gdk-pixbuf 44 gdk-pixbuf
18 gtk3 45 gtk3
@@ -22,6 +49,7 @@
22 cargo-watch 49 cargo-watch
23 50
24 lua5_4 51 lua5_4
52 luarocks
25 stylua 53 stylua
26 ]; 54 ];
27 }; 55 };