depot/third_party/nixpkgs/pkgs/desktops/deepin/go-package/deepin-desktop-schemas/default.nix
Default email 4d5a95770c Project import generated by Copybara.
GitOrigin-RevId: 3c5319ad3aa51551182ac82ea17ab1c6b0f0df89
2023-03-04 15:14:45 +03:00

57 lines
1.3 KiB
Nix

{ stdenv
, lib
, fetchFromGitHub
, buildGoPackage
, go-lib
, glib
}:
buildGoPackage rec {
pname = "deepin-desktop-schemas";
version = "5.10.11";
goPackagePath = "github.com/linuxdeepin/deepin-desktop-schemas";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "sha256-MboNj0zC3azavDUsmeNNafCcUa0GeoySl610+WOtNww=";
};
nativeBuildInputs = [ glib ];
buildInputs = [ go-lib ];
postPatch = ''
# Relocate files path for backgrounds and wallpapers
for file in $(grep -rl "/usr/share")
do
substituteInPlace $file \
--replace "/usr/share" "/run/current-system/sw/share"
done
'';
buildPhase = ''
runHook preBuild
GOPATH="$GOPATH:${go-lib}/share/gocode"
make ARCH=${stdenv.targetPlatform.linuxArch} -C go/src/${goPackagePath}
runHook postBuild
'';
installPhase = ''
runHook preInstall
make install DESTDIR="$out" PREFIX="/" -C go/src/${goPackagePath}
runHook postInstall
'';
preFixup = ''
glib-compile-schemas ${glib.makeSchemaPath "$out" "${pname}-${version}"}
'';
meta = with lib; {
description = "GSettings deepin desktop-wide schemas";
homepage = "https://github.com/linuxdeepin/deepin-desktop-schemas";
license = licenses.gpl3Plus;
platforms = platforms.linux;
maintainers = teams.deepin.members;
};
}