1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 wrapGAppsHook4,
6 appstream-glib,
7 blueprint-compiler,
8 desktop-file-utils,
9 meson,
10 ninja,
11 pkg-config,
12 glib,
13 gjs,
14 libadwaita,
15}:
16
17stdenv.mkDerivation rec {
18 pname = "design";
19 version = "46-alpha1";
20
21 src = fetchFromGitHub {
22 owner = "dubstar-04";
23 repo = "Design";
24 rev = "v${version}";
25 fetchSubmodules = true;
26 hash = "sha256-Q4R/Ztu4w8IRvq15xNXN/iP/6hIHe/W+me1jROGpYc8=";
27 };
28
29 nativeBuildInputs = [
30 appstream-glib
31 blueprint-compiler
32 desktop-file-utils
33 gjs
34 meson
35 ninja
36 pkg-config
37 wrapGAppsHook4
38 ];
39
40 buildInputs = [
41 glib
42 libadwaita
43 ];
44
45 # Use a symlink here so that the basename isn't changed by the wrapper which is used to decide the resource path.
46 postInstall = ''
47 mv $out/bin/io.github.dubstar_04.design $out/share/design/
48 ln -s $out/share/design/io.github.dubstar_04.design $out/bin
49 '';
50
51 meta = {
52 homepage = "https://github.com/dubstar-04/Design";
53 description = "2D CAD For GNOME";
54 maintainers = with lib.maintainers; [ linsui ];
55 license = lib.licenses.gpl3Plus;
56 platforms = lib.platforms.linux;
57 mainProgram = "io.github.dubstar_04.design";
58 };
59}