Package: guix-patches;
Reported by: Sergio Pastor Pérez <sergio.pastorperez <at> outlook.es>
Date: Tue, 28 Nov 2023 21:00:02 UTC
Severity: normal
Tags: patch
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
From: Sergio Pastor Pérez <sergio.pastorperez <at> outlook.es> To: guix-patches <at> gnu.org Cc: Sergio Pastor Pérez <sergio.pastorperez <at> outlook.es> Subject: [PATCH 00/91] Add Mission Center and its dependencies Date: Tue, 28 Nov 2023 21:23:30 +0100
Good evening! After some time I've managed to package Mission Center[1] and its dependencies. The dependency tree turned out to be massive *cries on rust*. I've decided to package this as an example on how to build a rust application which relies on the meson build system, I believe as of the time of writing we don't have any. Most of the dependencies are rust related. In order to alleviate the load on the rust-team I've tried to avoid, wherever possible, the use of flags such as `#:skip-build? #t` or `#:tests? #f`. I also ensured that the different additions updated older versions with the appropriate inherit keyword. You would notice that in order to package `mission-center`, some ugly hacks where required. Hacks such as providing the sources of `nvtop-src`. The application uses some of those source files to build certain internal modules. Also, I could not find any appropriate way of packaging `pathfinder` with our current rust build system. This package is problematic since its a multi-workspace rust repository, where each module is interdependent with each other. All quirks aside, I think It would be nice to have Mission Center in Guix since It's usually distributed as a Flatpack and serves as an example on how to package a piece of software with such an esoteric build. Thanks, Sergio. [1]: https://gitlab.com/mission-center-devs/mission-center Sergio Pastor Pérez (91): gnu: Add blueprint-compiler-next. gnu: Add rust-glib-sys-0.18. gnu: Add rust-gobject-sys-0.18. gnu: Add rust-gio-sys-0.18. gnu: Add rust-glib-macros-0.18. gnu: Add rust-glib-0.18. gnu: Add rust-gio-0.18. gnu: Add rust-gdk-pixbuf-sys-0.18. gnu: Add rust-gdk-pixbuf-0.18. gnu: Add rust-graphene-sys-0.18. gnu: Add rust-graphene-rs-0.18. gnu: Add rust-gl-loader-0.1. gnu: Add rust-pango-sys-0.18. gnu: Add rust-pango-0.18. gnu: Add rust-const-random-macro-0.1.15. gnu: Add rust-const-random-0.1.15. gnu: Add rust-proc-status-0.1. gnu: Add rust-ordermap-0.2. gnu: Add rust-quick-xml-0.30. gnu: Add rust-rstest-macros-0.17. gnu: Add rust-spinning-0.1. gnu: Add rust-to-method-1. gnu: Add rust-rustc-hash-1.0. gnu: Add rust-rstest-0.17. gnu: Add rust-minimad-0.12. gnu: Add rust-minidl-0.1. gnu: Add rust-libudev-sys-0.1. gnu: Add rust-byte-slice-cast-0.3. gnu: Add rust-file-size-1. gnu: Add rust-assert2-macros-0.3. gnu: Add rust-cli-log-2. gnu: Add rust-assert2-0.3. gnu: Add rust-coverage-helper-0.1. gnu: Add rust-dlv-list-0.5. gnu: Add rust-errno-sys-0.1. gnu: Add rust-libc-0.1. gnu: Add rust-khronos-0.1. gnu: Add rust-hashbrown-0.7. gnu: Add rust-egl-0.2. gnu: Add rust-ordered-multimap-0.6. gnu: Add rust-dlib-0.5.1. gnu: Add rust-wayland-sys-0.31. gnu: Add rust-wayland-backend-0.1.3. gnu: Add rust-textdistance-1. gnu: Add rust-rust-ini-0.19. gnu: Add rust-coolor-0.5.0. gnu: Add rust-deser-hjson-1. gnu: Add rust-crokey-proc-macros-0.4. gnu: Add rust-crokey-0.4. gnu: Add rust-xcb-0.10. gnu: Add rust-x11-clipboard-0.5.3. gnu: Add rust-termux-clipboard-0.1. gnu: Add rust-terminal-clipboard-0.3. gnu: Add rust-termimad-0.23. gnu: Add rust-core-affinity-0.8. gnu: Add rust-raw-sync-0.1. gnu: Add rust-raw-cpuid-11. gnu: Add rust-drm-fourcc-2. gnu: Add rust-drm-sys-0.4. gnu: Add rust-drm-ffi-0.5. gnu: Add rust-drm-0.9. gnu: Add rust-intmap-0.7. gnu: Add rust-interprocess-1. gnu: Add rust-rustbus-derive-0.5. gnu: Add rust-rustbus-0.19. gnu: Add rust-windows-x86-64-msvc-0.34. gnu: Add rust-windows-x86-64-gnu-0.34. gnu: Add rust-windows-tokens-0.34. gnu: Add rust-windows-interface-0.34. gnu: Add rust-windows-implement-0.34. gnu: Add rust-windows-i686-msvc-0.34. gnu: Add rust-windows-i686-gnu-0.34. gnu: Add rust-windows-aarch64-msvc-0.34. gnu: Add rust-windows-0.34. gnu: Add rust-win-sys-0.3. gnu: Add rust-shared-memory-extended-0.13. gnu: Add rust-sysinfo-0.29. gnu: Add rust-cairo-sys-rs-0.18. gnu: Add rust-cairo-rs-0.18. gnu: Add rust-gbm-sys-0.2. gnu: Add rust-gbm-0.12. gnu: Add rust-gdk4-sys-0.7. gnu: Add rust-gdk4-0.7. gnu: Add rust-gsk4-sys-0.7. gnu: Add rust-gsk4-0.7. gnu: Add rust-gtk4-sys-0.7. gnu: Add rust-gtk4-macros-0.7. gnu: Add rust-gtk4-0.7. gnu: Add rust-libadwaita-sys-0.5. gnu: Add rust-libadwaita-0.5. gnu: Add mission-center. gnu/packages/crates-graphics.scm | 419 ++++- gnu/packages/crates-gtk.scm | 556 ++++++- gnu/packages/crates-io.scm | 1390 +++++++++++++++-- gnu/packages/gnome.scm | 19 + .../patches/mission-center-gatherer.patch | 21 + gnu/packages/rust-apps.scm | 173 ++ 6 files changed, 2373 insertions(+), 205 deletions(-) create mode 100644 gnu/packages/patches/mission-center-gatherer.patch base-commit: e21f0cb7b7a87992004193cd56638ad961fe5928 -- 2.41.0
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.