Conversation
|
Result of 1 package built successfully:
1 suggestion:
Result of 1 package built successfully:
1 suggestion:
|
|
Newbie questions:
|
It is shorter. And these days, the latter is alias of the former.
I had to switch to git revision because 0.7.4 was broken. Now that 0.8.0 has been released, that probably will no longer be necessary.
See the checkboxes in the OP. |
|
Idea: -{ stdenv
+{ stdenv, lib
---
---
+, useGTK3Broadwayd ? false
+, useGTK4Broadwayd ? false
}: preFixup = ''
# Let python wrapper use GNOME flags.
makeWrapperArgs+=(
+ # For gtk3 broadwayd
+ ${ lib.optionalString useGTK3Broadwayd ''--prefix PATH : "${gtk3.dev}/bin"''}
# For gtk4-broadwayd
- --prefix PATH : "${gtk4.dev}/bin"
+ ${ lib.optionalString useGTK3Broadwayd ''--prefix PATH : "${gtk4.dev}/bin"''}
"''${gappsWrapperArgs[@]}"
)
'';Then app can be used as pkgs.cambalache.override {
# useGTK3Broadwayd = true;
useGTK4Broadwayd = true;
}Also, there are can be |
|
Broadway is necessary dependency – it is used for rendering the designed interface. And I think it should not be that hard – just move The path to the |
|
GTK3 has separate binary So next code works for me, and since I launch using $ nix-shell -I nixpkgs=$NIXPKGS_GIT -p cambalache --pure --run cambalacheSame as $ nix-shell -I nixpkgs=$NIXPKGS_GIT -p "cambalache.override{ useGTK4Broadwayd=true; }" --pure --run cambalacheMy default.nix{ lib, stdenv, fetchFromGitLab
, meson, pkg-config, ninja
, python3
, appstream-glib , desktop-file-utils, shared-mime-info
, gobject-introspection, gtk3, gtk4
, wrapGAppsHook
, webkitgtk
, gnome, dconf
, useGTK3Broadwayd ? false
, useGTK4Broadwayd ? false
}:
python3.pkgs.buildPythonApplication rec {
pname = "cambalache";
version = "0.8.0";
format = "other";
strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "jpu";
repo = pname;
rev = version;
sha256 = "05hf45v24l73fwv36bf90h6ksf6axvi8f4mddyq24x63w1yndhg9";
};
nativeBuildInputs = [
meson
ninja
pkg-config
appstream-glib
desktop-file-utils
gobject-introspection
wrapGAppsHook
shared-mime-info
];
buildInputs = [
gtk3
gtk4
webkitgtk
gnome.adwaita-icon-theme
];
propagatedBuildInputs = with python3.pkgs; [
pygobject3
lxml
];
# Prevent double wrapping.
dontWrapGApps = true;
preFixup = ''
# Let python wrapper use GNOME flags.
makeWrapperArgs+=(
# For gtk3 broadwayd
${ lib.optionalString useGTK3Broadwayd ''--prefix PATH : "${gtk3}/bin"''}
# For gtk4-broadwayd
${ lib.optionalString useGTK4Broadwayd ''--prefix PATH : "${gtk4.dev}/bin"''}
"''${gappsWrapperArgs[@]}"
)
'';
postPatch = ''
patchShebangs postinstall.py
mkdir -p $out/bin
${ lib.optionalString (!useGTK3Broadwayd) "install ${gtk3}/bin/broadwayd $out/bin/"}
${ lib.optionalString (!useGTK4Broadwayd) "install ${gtk4.dev}/bin/gtk4-broadwayd $out/bin/"}
'';
meta = with lib; {
description = "Cambalache is a new RAD tool for Gtk 4 and 3 with a clear MVC design and data model first philosophy.";
homepage = "https://gitlab.gnome.org/jpu/cambalache";
license = with licenses; [
lgpl21Only # Cambalache
gpl2Only # tools
];
#platforms = stdenv.lib.platforms.linux;
#maintainers = with maintainers; [ psydvl ];
};
} |
|
Thanks, I did not realize we did #116053 so I thought GTK 3 did not use the daemon. I decided to do the same in GTK 4 since it is quite small. |
|
Not sure if it is makes sense to merge this since it is still not very usable at the moment. |
|
Since nixpkgs/pkgs/development/interpreters/python/mk-python-derivation.nix Lines 46 to 47 in e0f466e Shouldn't it be replaced with propagatedBuildInputs?
|
|
Hopefully it will not be deprecated for much longer, albeit under a different name: #102613 |
|
There are 0.8.2 already published |
|
Any update on this? |
It is convenient to have it in PATH by default and does not seem to increase the output size much (+0.2M). Just as was done to GTK 3 in NixOS#116053
Motivation for this change
UI designer for GTK 3 & 4 (sort of like Glade):
https://gitlab.gnome.org/jpu/cambalache
$out/share/mime/) are required for filters in „Open project“ dialogue, can we add them to XDG_DATA_DIRS or something – turns out it is a bug https://gitlab.gnome.org/jpu/cambalache/-/merge_requests/7devoutput to reduce runtime closure.Things done
sandbox = trueset innix.conf? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"./result/bin/)