diff --git a/pkgs/desktops/deepin/dde-api/default.nix b/pkgs/desktops/deepin/dde-api/default.nix new file mode 100644 index 000000000000..d8452e5f7a38 --- /dev/null +++ b/pkgs/desktops/deepin/dde-api/default.nix @@ -0,0 +1,60 @@ +{ stdenv, buildGoPackage, fetchFromGitHub, pkgconfig, +go-gir-generator, glib, gtk3, poppler, librsvg, pulseaudio, alsaLib, +libcanberra, gnome3, deepin-gettext-tools, go }: + +buildGoPackage rec { + name = "${pname}-${version}"; + pname = "dde-api"; + version = "3.1.30"; + + goPackagePath = "pkg.deepin.io/dde/api"; + + src = fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "0piw6ka2xcbd5vi7m33d1afdjbb7nycxvmai530ka6r2xjabrkir"; + }; + + goDeps = ./deps.nix; + + nativeBuildInputs = [ + pkgconfig + go-gir-generator + deepin-gettext-tools + ]; + + buildInputs = [ + glib + gtk3 + poppler + librsvg + pulseaudio + alsaLib + libcanberra + gnome3.libgudev + ]; + + postPatch = '' + sed -i -e "s|/var|$bin/var|" Makefile + ''; + + buildPhase = '' + make -C go/src/${goPackagePath} + ''; + + installPhase = '' + make install PREFIX="$bin" SYSTEMD_LIB_DIR="$bin/lib" -C go/src/${goPackagePath} + mkdir -p $out/share + mv $bin/share/gocode $out/share/go + remove-references-to -t ${go} $bin/bin/* $bin/lib/deepin-api/* + ''; + + meta = with stdenv.lib; { + description = "Go-lang bindings for dde-daemon"; + homepage = https://github.com/linuxdeepin/dde-api; + license = licenses.gpl3; + platforms = platforms.linux; + maintainers = with maintainers; [ romildo ]; + }; +} diff --git a/pkgs/desktops/deepin/dde-api/deps.nix b/pkgs/desktops/deepin/dde-api/deps.nix new file mode 100644 index 000000000000..9df368325e3c --- /dev/null +++ b/pkgs/desktops/deepin/dde-api/deps.nix @@ -0,0 +1,129 @@ +# This file was generated by https://github.com/kamilchm/go2nix v1.2.1 +[ + { + goPackagePath = "github.com/alecthomas/template"; + fetch = { + type = "git"; + url = "https://github.com/alecthomas/template"; + rev = "a0175ee3bccc567396460bf5acd36800cb10c49c"; + sha256 = "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj"; + }; + } + { + goPackagePath = "github.com/alecthomas/units"; + fetch = { + type = "git"; + url = "https://github.com/alecthomas/units"; + rev = "2efee857e7cfd4f3d0138cc3cbb1b4966962b93a"; + sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl"; + }; + } + { + goPackagePath = "github.com/cryptix/wav"; + fetch = { + type = "git"; + url = "https://github.com/cryptix/wav"; + rev = "8bdace674401f0bd3b63c65479b6a6ff1f9d5e44"; + sha256 = "18nyqv0ic35fs9fny8sj84c00vbxs8mnric6vr6yl42624fh5id6"; + }; + } + { + goPackagePath = "github.com/disintegration/imaging"; + fetch = { + type = "git"; + url = "https://github.com/disintegration/imaging"; + rev = "32df9565b4e0c1460f1915d53f6ff198d9a41af2"; + sha256 = "1nkmaav375fv4610g8i9bam33pv4aa4fy2n4nypprhc7vq0svwkm"; + }; + } + { + goPackagePath = "github.com/kr/pretty"; + fetch = { + type = "git"; + url = "https://github.com/kr/pretty"; + rev = "73f6ac0b30a98e433b289500d779f50c1a6f0712"; + sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp"; + }; + } + { + goPackagePath = "github.com/kr/text"; + fetch = { + type = "git"; + url = "https://github.com/kr/text"; + rev = "e2ffdb16a802fe2bb95e2e35ff34f0e53aeef34f"; + sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1"; + }; + } + { + goPackagePath = "github.com/linuxdeepin/go-dbus-factory"; + fetch = { + type = "git"; + url = "https://github.com/linuxdeepin/go-dbus-factory"; + rev = "2a30fc6fb47b70b8879855df8e29c8f581c419aa"; + sha256 = "0b0j47n3bb5fd04p01jla6k9vz2ck8l8512ga0xsn78177yb2z0w"; + }; + } + { + goPackagePath = "github.com/linuxdeepin/go-x11-client"; + fetch = { + type = "git"; + url = "https://github.com/linuxdeepin/go-x11-client"; + rev = "8f12fd35ff10b391f0321aa41b94db6acd951ea3"; + sha256 = "1axxzzhbiwvi76d19bix3zm5wv3qmlq0wgji9mwjbmkb4bvp0v3d"; + }; + } + { + goPackagePath = "github.com/nfnt/resize"; + fetch = { + type = "git"; + url = "https://github.com/nfnt/resize"; + rev = "83c6a9932646f83e3267f353373d47347b6036b2"; + sha256 = "005cpiwq28krbjf0zjwpfh63rp4s4is58700idn24fs3g7wdbwya"; + }; + } + { + goPackagePath = "golang.org/x/image"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/image"; + rev = "991ec62608f3c0da01d400756917825d1e2fd528"; + sha256 = "0jipi9czjczi6hlqb5kchgml8r6h6qyb4gqrb0nnb63m25510019"; + }; + } + { + goPackagePath = "golang.org/x/net"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/net"; + rev = "146acd28ed5894421fb5aac80ca93bc1b1f46f87"; + sha256 = "0d177474z85nvxz8ch6y9wjqz288844wwx8q9za3x2njnk4jbgxj"; + }; + } + { + goPackagePath = "gopkg.in/alecthomas/kingpin.v2"; + fetch = { + type = "git"; + url = "https://gopkg.in/alecthomas/kingpin.v2"; + rev = "947dcec5ba9c011838740e680966fd7087a71d0d"; + sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r"; + }; + } + { + goPackagePath = "gopkg.in/check.v1"; + fetch = { + type = "git"; + url = "https://gopkg.in/check.v1"; + rev = "788fd78401277ebd861206a03c884797c6ec5541"; + sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a"; + }; + } + { + goPackagePath = "pkg.deepin.io/lib"; + fetch = { + type = "git"; + url = "https://github.com/linuxdeepin/go-lib.git"; + rev = "f09dcc32fc5a36b53ff7760e5a06e7f8f97b81f9"; + sha256 = "1z4iw7h6lknm9jrna2c73icg1a1mxvzrqdhgjvaiww89mql1jzb4"; + }; + } +] diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix index f85d51b2072d..1ef7177e94d4 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -4,6 +4,7 @@ let packages = self: with self; { dbus-factory = callPackage ./dbus-factory { }; + dde-api = callPackage ./dde-api { }; dde-calendar = callPackage ./dde-calendar { }; dde-qt-dbus-factory = callPackage ./dde-qt-dbus-factory { }; deepin-gettext-tools = callPackage ./deepin-gettext-tools { }; diff --git a/pkgs/desktops/deepin/go-gir-generator/default.nix b/pkgs/desktops/deepin/go-gir-generator/default.nix index cc05f6f055b0..d5ec29f1ef8b 100644 --- a/pkgs/desktops/deepin/go-gir-generator/default.nix +++ b/pkgs/desktops/deepin/go-gir-generator/default.nix @@ -22,9 +22,13 @@ stdenv.mkDerivation rec { libgudev ]; + postPatch = '' + sed -i -e 's:/share/gocode:/share/go:' Makefile + ''; + makeFlags = [ "PREFIX=$(out)" - "HOME=$(TMP)" + "GOCACHE=off" ]; meta = with stdenv.lib; {