From d1eb9a91d5a98cb644e4e1d88af8265c9861ed33 Mon Sep 17 00:00:00 2001 From: Hugo Renard Date: Mon, 6 Oct 2025 14:16:15 +0200 Subject: [PATCH] pkg: init nix flake Signed-off-by: Hugo Renard --- flake.lock | 27 +++++++++++++++++++ flake.nix | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 106 insertions(+) create mode 100644 flake.lock create mode 100644 flake.nix diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..4070242 --- /dev/null +++ b/flake.lock @@ -0,0 +1,27 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1779560665, + "narHash": "sha256-tpyBcxPpcQb8ukyNF7DoCwfSY3VPsxHoYwj00Cayv5o=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "64c08a7ca051951c8eae34e3e3cb1e202fe36786", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..aabedae --- /dev/null +++ b/flake.nix @@ -0,0 +1,79 @@ +{ + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + }; + outputs = + { self, nixpkgs }: + { + packages.x86_64-linux.default = self.packages.x86_64-linux.reflection; + packages.x86_64-linux.reflection = nixpkgs.legacyPackages.x86_64-linux.callPackage ( + { + lib, + stdenv, + cargo, + desktop-file-utils, + meson, + ninja, + pkg-config, + rustc, + wrapGAppsHook4, + rustPlatform, + gtk4, + gtksourceview5, + libadwaita, + libpanel, + vte-gtk4, + glib, + openssl, + blueprint-compiler, + libspelling, + }: + stdenv.mkDerivation rec { + pname = "reflection"; + version = "0.3rc0"; + + src = ./.; + + cargoDeps = rustPlatform.fetchCargoVendor { + inherit pname version src; + hash = "sha256-cbrZJzKIVqrA49Tjd3xR9do04CV8Euhb3UjPs3PtqhI="; + }; + + PKG_CONFIG_PATH = "${openssl.dev}/lib/pkgconfig"; + + nativeBuildInputs = [ + desktop-file-utils + glib + gtk4 + meson + ninja + pkg-config + rustPlatform.cargoSetupHook + cargo + rustc + wrapGAppsHook4 + blueprint-compiler + libspelling + ]; + + buildInputs = [ + gtk4 + gtksourceview5 + libadwaita + libpanel + vte-gtk4 + libspelling + ]; + + meta = { + description = "Collaborative, local-first GTK text editor"; + homepage = "https://github.com/p2panda/reflection"; + license = lib.licenses.gpl3Only; + platforms = lib.platforms.linux; + mainProgram = "reflection"; + }; + + } + ) { }; + }; +}