Skip to content

Commit

Permalink
cdemu: updates, fixes and build simplification
Browse files Browse the repository at this point in the history
- rely on wrapGApps*Hook for gobject-introspection access
- use callPackage as intended
  • Loading branch information
bendlas committed May 14, 2024
1 parent 8db50d6 commit 2e00b8a
Show file tree
Hide file tree
Showing 6 changed files with 49 additions and 68 deletions.
26 changes: 10 additions & 16 deletions pkgs/applications/emulators/cdemu/analyzer.nix
Original file line number Diff line number Diff line change
@@ -1,20 +1,14 @@
{ callPackage, makeWrapper, gobject-introspection, cmake
{ callPackage, makeWrapper, gobject-introspection, cmake, wrapGAppsHook3
, python3Packages, gtk3, glib, libxml2, gnuplot, gnome, gdk-pixbuf, librsvg, intltool, libmirage }:
let pkg = import ./base.nix {
version = "3.2.5";
callPackage ./base.nix {
version = "3.2.6";
pname = "image-analyzer";
pkgSha256 = "00906lky0z1m0bdqnjmzxgcb19dzvljhddhh42lixyr53sjp94cc";
};
in callPackage pkg {
sha256 = "sha256-7I8RUgd+k3cEzskJGbziv1f0/eo5QQXn62wGh/Y5ozc=";
buildInputs = [ glib gtk3 libxml2 gnuplot libmirage gnome.adwaita-icon-theme gdk-pixbuf librsvg
python3Packages.python python3Packages.pygobject3 python3Packages.matplotlib ];
drvParams = {
nativeBuildInputs = [ gobject-introspection cmake makeWrapper intltool ];
postFixup = ''
wrapProgram $out/bin/image-analyzer \
--set PYTHONPATH "$PYTHONPATH" \
--set GI_TYPELIB_PATH "$GI_TYPELIB_PATH" \
--prefix XDG_DATA_DIRS : "$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
};
python3Packages.pygobject3 python3Packages.matplotlib ];
nativeBuildInputs = [ gobject-introspection cmake wrapGAppsHook3 intltool ];
postFixup = ''
wrapProgram $out/bin/image-analyzer \
--set PYTHONPATH "$PYTHONPATH"
'';
}
18 changes: 11 additions & 7 deletions pkgs/applications/emulators/cdemu/base.nix
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
{ pname, version, pkgSha256 }:
attrs@{ lib, stdenv, fetchurl, cmake, pkg-config, buildInputs, drvParams ? {}, ... }:
stdenv.mkDerivation ( rec {
inherit pname version buildInputs;
{ lib, stdenv, fetchurl, cmake, pkg-config
, pname, version, sha256, buildInputs
, nativeBuildInputs ? [ ]
, postFixup ? ""
, extraDrvParams ? { }
}:
stdenv.mkDerivation ( {
inherit pname version buildInputs postFixup;
src = fetchurl {
url = "mirror://sourceforge/cdemu/${pname}-${version}.tar.xz";
sha256 = pkgSha256;
inherit sha256;
};
nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [ pkg-config cmake ];
nativeBuildInputs = nativeBuildInputs ++ [ pkg-config cmake ];
setSourceRoot = ''
mkdir build
cd build
Expand All @@ -33,4 +37,4 @@ stdenv.mkDerivation ( rec {
platforms = platforms.linux;
maintainers = with lib.maintainers; [ bendlas ];
};
} // drvParams)
} // extraDrvParams)
22 changes: 9 additions & 13 deletions pkgs/applications/emulators/cdemu/client.nix
Original file line number Diff line number Diff line change
@@ -1,16 +1,12 @@
{ callPackage, python3Packages, intltool, makeWrapper }:
let pkg = import ./base.nix {
{ callPackage, python3Packages, intltool, wrapGAppsNoGuiHook }:
callPackage ./base.nix {
version = "3.2.5";
pname = "cdemu-client";
pkgSha256 = "1prrdhv0ia0axc6b73crszqzh802wlkihz6d100yvg7wbgmqabd7";
};
in callPackage pkg {
nativeBuildInputs = [ makeWrapper intltool ];
buildInputs = [ python3Packages.python python3Packages.dbus-python python3Packages.pygobject3 ];
drvParams = {
postFixup = ''
wrapProgram $out/bin/cdemu \
--set PYTHONPATH "$PYTHONPATH"
'';
};
sha256 = "1prrdhv0ia0axc6b73crszqzh802wlkihz6d100yvg7wbgmqabd7";
nativeBuildInputs = [ intltool wrapGAppsNoGuiHook ];
buildInputs = with python3Packages; [ dbus-python pygobject3 ];
postFixup = ''
wrapProgram $out/bin/cdemu \
--set PYTHONPATH "$PYTHONPATH"
'';
}
10 changes: 4 additions & 6 deletions pkgs/applications/emulators/cdemu/daemon.nix
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
{ callPackage, glib, libao, intltool, libmirage, coreutils }:
let pkg = import ./base.nix {
version = "3.2.5";
callPackage ./base.nix {
version = "3.2.6";
pname = "cdemu-daemon";
pkgSha256 = "16g6fv1lxkdmbsy6zh5sj54dvgwvm900fd18aq609yg8jnqm644d";
};
in callPackage pkg {
sha256 = "sha256-puQE4+91xhRuNjVPZYgN/WO0uO8fVAOdxQWOGQ+FfY8=";
nativeBuildInputs = [ intltool ];
buildInputs = [ glib libao libmirage ];
drvParams.postInstall = ''
extraDrvParams.postInstall = ''
mkdir -p $out/share/dbus-1/services
cp -R ../$pname-$version/service-example $out/share/cdemu
substitute \
Expand Down
31 changes: 11 additions & 20 deletions pkgs/applications/emulators/cdemu/gui.nix
Original file line number Diff line number Diff line change
@@ -1,22 +1,13 @@
{ callPackage, makeWrapper, gobject-introspection, cmake
{ callPackage, makeWrapper, gobject-introspection, cmake, wrapGAppsHook3
, python3Packages, gtk3, glib, libnotify, intltool, gnome, gdk-pixbuf, librsvg }:
let
pkg = import ./base.nix {
version = "3.2.5";
pname = "gcdemu";
pkgSha256 = "1nvpbq4mz8caw91q5ny9gf206g9bypavxws9nxyfcanfkc4zfkl4";
};
inherit (python3Packages) python pygobject3;
in callPackage pkg {
buildInputs = [ python pygobject3 gtk3 glib libnotify gnome.adwaita-icon-theme gdk-pixbuf librsvg ];
drvParams = {
nativeBuildInputs = [ gobject-introspection cmake makeWrapper intltool ];
postFixup = ''
wrapProgram $out/bin/gcdemu \
--set PYTHONPATH "$PYTHONPATH" \
--set GI_TYPELIB_PATH "$GI_TYPELIB_PATH" \
--prefix XDG_DATA_DIRS : "$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
# TODO AppIndicator
};
callPackage ./base.nix {
version = "3.2.6";
pname = "gcdemu";
sha256 = "sha256-w4vzKoSotL5Cjfr4Cu4YhNSWXJqS+n/vySrwvbhR1zA=";
buildInputs = [ python3Packages.pygobject3 gtk3 glib libnotify gnome.adwaita-icon-theme gdk-pixbuf librsvg ];
nativeBuildInputs = [ cmake wrapGAppsHook3 intltool ];
postFixup = ''
wrapProgram $out/bin/gcdemu \
--set PYTHONPATH "$PYTHONPATH"
'';
}
10 changes: 4 additions & 6 deletions pkgs/applications/emulators/cdemu/libmirage.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,12 @@
, glib, libsndfile, zlib, bzip2, xz, libsamplerate, intltool
, pcre, util-linux, libselinux, libsepol }:

let pkg = import ./base.nix {
version = "3.2.5";
callPackage ./base.nix {
version = "3.2.7";
pname = "libmirage";
pkgSha256 = "0f8i2ha44rykkk3ac2q8zsw3y1zckw6qnf6zvkyrj3qqbzhrf3fm";
};
in callPackage pkg {
sha256 = "sha256-+okkgNeVS8yoKSrQDy4It7PiPlTSiOsUoFxQ1FS9s9M=";
buildInputs = [ glib libsndfile zlib bzip2 xz libsamplerate ];
drvParams = {
extraDrvParams = {
PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_GIRDIR = "${placeholder "out"}/share/gir-1.0";
PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_TYPELIBDIR = "${placeholder "out"}/lib/girepository-1.0";
nativeBuildInputs = [ cmake gobject-introspection pkg-config intltool ];
Expand Down

0 comments on commit 2e00b8a

Please sign in to comment.