Package Details: makehuman 1.2.0-7

Git Clone URL: https://aur.archlinux.org/makehuman.git (read-only, click to copy)
Package Base: makehuman
Description: Parametrical modeling program for creating human bodies
Upstream URL: http://www.makehumancommunity.org/
Keywords: 3D
Licenses: AGPL3, custom:CC0
Submitter: stativ
Maintainer: pekkarr
Last Packager: pekkarr
Votes: 98
Popularity: 0.000000
First Submitted: 2007-02-10 11:16 (UTC)
Last Updated: 2023-02-12 13:36 (UTC)

Latest Comments

1 2 3 4 5 6 Next › Last »

pekkarr commented on 2023-03-04 12:34 (UTC)

@jantrix It seems like the issue is that if the download is interrupted, it's not possible to continue the download from the same position because the Github backend seems to compress it on the fly. This might lead to the download being treated as finished even though it was incomplete. The expected length for the makehuman-assets-1.2.0.tar.gz archive is 271883058 bytes, or 260 MiB.

One solution would be to download the files with git-lfs, as the upstream recommends. This can be achieved with the folowing patch to the PKGBUILD:

diff --git a/PKGBUILD b/PKGBUILD
index 5a9adb3..380ef1f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,6 +1,8 @@
 # Maintainer: Pekka Ristola <pekkarr [at] protonmail [dot] com>
 # Contributor: Lukas Jirkovsky <l.jirkovsky@gmail.com>

+_assets_repo='https://github.com/makehumancommunity/makehuman-assets.git'
+
 pkgname=makehuman
 pkgver=1.2.0
 pkgrel=7
@@ -13,17 +15,18 @@ depends=('python-numpy'
          'python-opengl'
          'qt5-svg'
          'hicolor-icon-theme')
+makedepends=(git git-lfs)
 optdepends=('python-pygments: IPython Qt Console plugin'
             'python-distro: distro detection for debug output')
 source=("$pkgname-$pkgver.tar.gz::https://github.com/makehumancommunity/makehuman/archive/refs/tags/v$pkgver.tar.gz"
-        "$pkgname-assets-$pkgver.tar.gz::https://github.com/makehumancommunity/makehuman-assets/archive/v$pkgver.tar.gz"
+        "git+${_assets_repo}#tag=v$pkgver"
         "$pkgname-188.patch::https://github.com/makehumancommunity/makehuman/pull/188.patch"
         "$pkgname-197.patch::https://github.com/makehumancommunity/makehuman/pull/197.patch"
         "$pkgname-220.patch::https://github.com/makehumancommunity/makehuman/pull/220.patch"
         "$pkgname-multisampling.patch::https://github.com/makehumancommunity/makehuman/commit/c47b884028a24eb190d097e7523a3059e439cb6f.patch"
         "$pkgname-fix_77-2.patch::https://github.com/makehumancommunity/makehuman/commit/02c4269a2d4c57f68159fe8f437a8b1978b99099.patch")
 sha512sums=('e15acf536c99f2258abd317e3ff88e908d7447bea07be2c9b2319bd4b1847e76ad3035479e1d71ec5b086aa2442e7530436a6844a11e4c9bfd74abc26c3bd9f5'
-            '79fc694b68dcfb8e17d7162b9225e9ddc23d5c011eff39f5a6268c3b3b72c26414ed0441194e3e25312a9f2b30e08dedaef16753b64d0300c5cf43830411caea'
+            'SKIP'
             '989810a56138db858bedce341b099986a5fb5f64a7ce1d275d71c0409c8027d868c5b5a165ee119ead25bfdcf556492ca5856abe274d3428723b5312582b1f0c'
             'c1be08b522c372c04836f37afd8e0245efada6dda3a20e8c2c5ebd75f196cc911270adb21dcf40b4eba754ba0c28045121eb7fe71fcf5cf0fdff4b72e3a8250d'
             '5cbe7f6e6b56e283c03ed80740be014e7de761b2f1891a981292e40928f54eadd1fefad866c0e3360a6262ed69d29a694b5ff3ae854cb57631797113788fc6c3'
@@ -31,8 +34,14 @@ sha512sums=('e15acf536c99f2258abd317e3ff88e908d7447bea07be2c9b2319bd4b1847e76ad3
             '5df80df28d734e4c81855112b42746dbc4586fa734c2a8432bfecb62864073b96baf6c588dbf65ada43990c47a135c6ae19a09dd909f233c8ea56f35a6c10091')

 prepare() {
+  cd "$pkgname-assets"
+  # Download git-lfs files
+  git remote add github "$_assets_repo"
+  git lfs install --local
+  git lfs pull github
+
   # copy files from assets repo to makehuman data directory
-  cp -r "$pkgname-assets-$pkgver"/base/* "$pkgname-$pkgver/$pkgname/data/"
+  cp -r base/* "$srcdir/$pkgname-$pkgver/$pkgname/data/"

   # make build_prepare.py happy
   cd "$srcdir/$pkgname-$pkgver"

The downside of this approach is that the assets have to be redownloaded each time the package is rebuilt, as makepkg doesn't natively support git-lfs repositories. Also git clone of the assets repo might fail if the user has git-lfs configured in their .gitconfig, but this can be solved by building in a clean chroot. For these reasons the PKGBUILD uses the tar archive instead, but the git-lfs version might be more resilient with download issues, so you could give it a try.

jantrix commented on 2023-03-02 20:05 (UTC) (edited on 2023-03-02 20:08 (UTC) by jantrix)

@pekkarr I had done that several times before. On fresh Manjaro Installation its the same. Then I loaded the file https://github.com/makehumancommunity/makehuman-assets/archive/v1.2.0.tar.gz twice directly and twice via Tor and got files of significantly different lengths each time. The archives are always corrupt. Hmmm...

pekkarr commented on 2023-03-02 17:07 (UTC)

@jantrix I tried downloading the makehuman-assets-1.2.0.tar.gz archive again, and it still has the same sha512sum. Maybe your download was corrupted, try deleting the archive and downloading again.

jantrix commented on 2023-03-02 16:21 (UTC)

Installation fails as it returns an error with a sha512sums: makehuman-assets-1.2.0.tar.gz ... Failed.

==> Überprüfe source Dateien mit sha512sums... makehuman-1.2.0.tar.gz ... Erfolg makehuman-assets-1.2.0.tar.gz ... FEHLGESCHLAGEN makehuman-188.patch ... Erfolg ...

pekkarr commented on 2023-02-12 13:38 (UTC)

@Divert this bug should be fixed in the latest 1.2.0-7 release

Divert commented on 2023-02-08 20:05 (UTC) (edited on 2023-02-08 20:07 (UTC) by Divert)

Not working as of today. Here is the error:


Running ['/usr/bin/python3', 'compile_targets.py'] from /home/user/.cache/yay/makehuman/src/makehuman-1.2.0/makehuman
PRE STARTUP SETTING: useHDPI = False
PRE STARTUP SETTING: noShaders = False
PRE STARTUP SETTING: noSampleBuffers = False

Traceback (most recent call last):
  File "/home/user/.cache/yay/makehuman/src/makehuman-1.2.0/makehuman/compile_targets.py", line 74, in <module>
    np.save(lpath, makehuman.getAssetLicense().toNumpyString())

  File "<__array_function__ internals>", line 200, in save
  File "/usr/lib/python3.10/site-packages/numpy/lib/npyio.py", line 521, in save
    arr = np.asanyarray(arr)

ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 1 dimensions. The detected shape was (2,) + inhomogeneous part.

check that compile_targets.py is working correctly
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: makehuman

Tio commented on 2022-07-09 15:48 (UTC)

Thanks it works now!

pekkarr commented on 2022-07-09 14:40 (UTC)

@Tio I updated the PKGBUILD to download assets in a tar archive which fixes the issue with git configuration.

Tio commented on 2022-07-07 13:54 (UTC)

I see. Can't this be fixed via the pkgbuild? Many people may use things like Pamac and such to install AUR packages and they won't know how to fix this error. Thanks!

pekkarr commented on 2022-07-05 17:59 (UTC)

If the build fails with an error like Error downloading object: base/clothes/..., try building with

GIT_CONFIG_GLOBAL=/dev/null makepkg