#47 updpkg: libre/blender 3.1.2
Opened 2 years ago by morris. Modified 2 years ago
morris/abslibre blender-3-1-2  into  pull-requests

file modified
+27 -82
@@ -5,79 +5,43 @@ 

  # Contributor: Márcio Silva <coadde@hyperbola.info>

  # Contributor: bill-auger <bill-auger@programmer.net>

  

- 

  # parabola changes and rationale:

  # - removed support for non-free CUDA and optix

  # - set OS type string to GNU/Linux-libre

- # - pin to tightly-coupled dependency versions

- 

  

  pkgname=blender

- pkgver=2.93.5

- pkgrel=7

+ pkgver=3.1.2

+ pkgrel=1

  pkgrel+=.parabola1

- epoch=17

- _pythonver_x86_64=3.9

- _pythonver_i686=3.9

- _pythonver_armv7h=3.9

+ _pythonver_x86_64=3.10

  eval "_python_ver=\$_pythonver_${CARCH}"

  pkgdesc="A fully integrated 3D graphics creation suite"

- pkgdesc+=", without non-free CUDA or optix support"

+ pkgdesc+=", without non-free CUDA or OptiX support"

  arch=('x86_64')

- arch+=('i686' 'armv7h')

  license=('GPL')

  url="https://www.blender.org"

- depends=('libpng' 'libtiff' 'openexr' 'python' 'desktop-file-utils' 'python-requests' 'potrace'

-          'shared-mime-info' 'hicolor-icon-theme' 'xdg-utils' 'glew' 'openjpeg2' 'python-numpy'

-          'freetype2' 'openal' 'ffmpeg' 'fftw' 'boost-libs' 'opencollada' 'alembic' 'openxr'

-          'openimageio' 'libsndfile' 'jack' 'opencolorio' 'openshadinglanguage' 'openimagedenoise'

-          'jemalloc' 'libspnav' 'ptex' 'opensubdiv' 'openvdb' 'log4cplus' 'sdl2' 'embree' 'libharu')

- [[ "${CARCH}" != 'x86_64' ]] && depends=( ${depends[*]/openimagedenoise/} )

- [[ "${CARCH}" != 'x86_64' ]] && depends=( ${depends[*]/libharu/} )

- [[ "${CARCH}" == 'armv7h' ]] && depends=( ${depends[*]/embree/} )

- makedepends=('cmake' 'boost' 'mesa' 'git' 'llvm' 'cuda' 'ninja')

- makedepends=( ${makedepends[*]/cuda/} )

+ depends=('alembic' 'boost-libs' 'draco' 'embree' 'ffmpeg' 'fftw' 'freetype2' 'glew'

+          'hicolor-icon-theme' 'jack' 'jemalloc' 'libharu' 'libpng' 

+ 	 'libsndfile' 'libspnav' 'libtiff' 'log4cplus' 'openal' 'opencollada'

+ 	 'opencolorio' 'openexr' 'openimagedenoise' 'openimageio' 'openjpeg2'

+ 	 'openshadinglanguage' 'opensubdiv' 'openvdb' 'openxr' 'potrace'

+ 	 'ptex' 'python' 'python-numpy' 'sdl2')

+ makedepends=('boost' 'cmake' 'git' 'llvm' 'mesa' 'ninja')

  options=(!strip)

  source=("git+https://git.blender.org/blender.git#tag=v$pkgver"

          "git+https://git.blender.org/blender-addons.git"

          "git+https://git.blender.org/blender-addons-contrib.git"

          "git+https://git.blender.org/blender-translations.git"

          "git+https://git.blender.org/blender-dev-tools.git"

-         blender-openexr3.patch)

+ 	"force-draco1.patch"

+ 	"force-draco2.patch")

  sha512sums=('SKIP'

              'SKIP'

              'SKIP'

              'SKIP'

              'SKIP'

-             'e2dd7210d26b70445e9ae8e33dea35111ad0b0aca9d3b4ded3df560d0fcc8dc044868f729e0f090a04b6f316f083b5505a7056ce088e8702065add87b9b457e5')

- 

- 

- _version_constraint() # (dep_pkgname [precision])

- {

-   local dep_pkgname=$1

-   local full_version=$(pacman -S --print-format='%v' ${dep_pkgname} | tail -n 1)

-   local n_dots=$(tmp=${full_version%-*} ; tmp=${tmp//[^\.]} ; echo "${#tmp}" ;)

-   local def_precision=$(( n_dots + 1 ))

-   local precision=$( [[ "$2" =~ ^[1-${def_precision}]$ ]] && echo $2 || echo ${def_precision} )

-   local pkgver_rx='[^-\.\ ]+'

-   local subver_rx='\.'${pkgver_rx}

-   local pkgrel_rx='[^-\ ]+'

-   local capture_rx=${pkgver_rx}

-   for (( n_dots=1 ; n_dots < precision ; n_dots++ )) ; do capture_rx+=${subver_rx} ; done ;

- 

-   if   [[ "${full_version}" =~ ^(${capture_rx})(${subver_rx})*-${pkgrel_rx}$ ]]

-   then local version=${BASH_REMATCH[1]}

-        local subver_inc=$(( ${version##*.} + 1 ))

-        local version_inc=$( [[ "${version}" =~ \. ]] && echo ${version%.*}.${subver_inc} || \

-                                                         echo ${subver_inc}                  )

-        local constraint_string="${dep_pkgname}>=${version} ${dep_pkgname}<${version_inc}"

- 

-        echo "applied version constraint: ${constraint_string}" >&2

-        echo -n "${constraint_string}"

-   else echo "ERROR: _version_constraint() error parsing: dep_pkgname='${dep_pkgname}' full_version='${full_version}'" >&2

-        exit 1

-   fi

- }

+ 	    'e239da4f3906f1b54265435181cf770bae3d269c8d915df9a73861e6ee71ec70bf2339426e7c81a91e5a567273b3b3742d7a99feefd3398d821b26e1ff3a56d0'

+ 	    '527ab66e5eace777de0043c1ca5787a488f6471450ce67fd6d08137ad0ef56177bc0c17696f30a5fca23fa55d8ca9c3f30cb7b17550dba2dbd8e89ca0b361990')

  

  prepare() {

    cd "$pkgname"
@@ -90,32 +54,21 @@ 

    git submodule update

    git submodule foreach git checkout v${pkgver}

  

-   patch -p1 < "$srcdir"/blender-openexr3.patch # Fix build with OpenEXR 3

- 

    # set OS type string

    sed -i 's|BUILD_PLATFORM;|"GNU/Linux-libre";|' 'source/creator/buildinfo.c'

  

-   # FIXME: error: implicit declaration of function ‘atomic_add_and_fetch_uint64’;

-   #               did you mean ‘atomic_add_and_fetch_uint32’? [-Werror=implicit-function-declaration]

-   if   [[ "${CARCH}" == 'armv7h' ]] || [[ "${CARCH}" == 'i686' ]]

-   then local sed_cmd='s| atomic_add_and_fetch_uint64(| atomic_add_and_fetch_uint32(|'

-        sed -i "${sed_cmd}" source/blender/blenlib/intern/session_uuid.c

-   fi

+   # Configure Draco (See FS#73415)

+   patch -p1 -i "$srcdir"/force-draco1.patch

+   patch -p1 -d release/scripts/addons -i "$srcdir"/force-draco2.patch

+ 

  }

  

  build() {

    cd "$pkgname"

  

-   # libre changes

-   local _extra_opts=( -DWITH_CYCLES_CUDA_BINARIES=OFF \

-                       -DWITH_CYCLES_DEVICE_CUDA=OFF   \

+   # Libre Changes

+   local _extra_opts=( -DWITH_CYCLES_DEVICE_CUDA=OFF   \

                        -DWITH_CYCLES_DEVICE_OPTIX=OFF  )

-   # arch-specific options

-   case "${CARCH}" in

-   'i686'  ) _extra_opts+=( -DWITH_RAYOPTIMIZATION=OFF \

-                            -DWITH_CYCLES_EMBREE=ON    ) ;;

-   'x86_64') _extra_opts+=( -DWITH_CYCLES_EMBREE=ON    ) ;;

-   esac

  

    local PYTHON_VER=${_python_ver}

  
@@ -139,19 +92,6 @@ 

  package() {

    cd "$pkgname"

  

-   # pin to tightly-coupled dependency versions

-   # NOTE: indirect sodeps may still be unsatisfyable:

-   #       libboost_filesystem.so <- openimageio,

-   #       libboost_thread.so     <- openshadinglanguage,

-   #       libboost_iostreams.so  <- openvdb

-   depends+=( libboost_locale.so

-              $(_version_constraint openexr             2)   # eg: libHalf.so.12

-              $(_version_constraint openimageio         2)   # eg: libOpenImageIO.so.2.0

-              $(_version_constraint openshadinglanguage 2)   # eg: liboslcomp.so.1.10

-              $(_version_constraint opensubdiv          3)   # eg: libosdGPU.so.3.3.3

-              $(_version_constraint openvdb             2)   # eg: libopenvdb.so.6.2

-              $(_version_constraint python              2) ) # eg: libpython3.6.so.1.0

- 

    DESTDIR="${pkgdir}" ninja -C build install

    install -Dm755 release/bin/blender-softwaregl "${pkgdir}/usr/bin/blender-softwaregl"

    python -m compileall "${pkgdir}/usr/share/blender"
@@ -160,5 +100,10 @@ 

    install -Dm644 release/freedesktop/org.blender.Blender.appdata.xml "${pkgdir}/usr/share/metainfo/org.blender.Blender.appdata.xml"

  

    # Manually install additional scripts (See FS#69351)

-   cp -r release/scripts/addons_contrib/* "${pkgdir}"/usr/share/blender/2*/scripts/addons_contrib/

+   cp -r release/scripts/addons_contrib/* "${pkgdir}"/usr/share/blender/3*/scripts/addons_contrib/

+ 

+   # Manually install draco bindings (See FS#73415)

+   mkdir -p "${pkgdir}"/usr/lib/python3.10/

+   mv "${pkgdir}"/usr/share/blender/3*/python/lib/* "${pkgdir}"/usr/lib/

+   rm -r "${pkgdir}"/usr/share/blender/3*/python

  }

@@ -1,42 +0,0 @@ 

- diff --git a/build_files/cmake/Modules/FindOpenEXR.cmake b/build_files/cmake/Modules/FindOpenEXR.cmake

- index 090f80b8df7..a2f7b4c622b 100644

- --- a/build_files/cmake/Modules/FindOpenEXR.cmake

- +++ b/build_files/cmake/Modules/FindOpenEXR.cmake

- @@ -34,11 +34,10 @@ ENDIF()

-  SET(_openexr_libs_ver_init "2.0")

-  

-  SET(_openexr_FIND_COMPONENTS

- -  Half

-    Iex

- -  IlmImf

- -  IlmThread

-    Imath

- +  OpenEXR

- +  IlmThread

-  )

-  

-  SET(_openexr_SEARCH_DIRS

- @@ -120,7 +119,7 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenEXR  DEFAULT_MSG

-  IF(OPENEXR_FOUND)

-    SET(OPENEXR_LIBRARIES ${_openexr_LIBRARIES})

-    # Both include paths are needed because of dummy OSL headers mixing #include <OpenEXR/foo.h> and #include <foo.h> :(

- -  SET(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR}/OpenEXR)

- +  SET(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ${OPENEXR_INCLUDE_DIR}/OpenEXR ${OPENEXR_INCLUDE_DIR}/Imath)

-  ENDIF()

-  

-  MARK_AS_ADVANCED(

- diff --git a/source/blender/imbuf/intern/openexr/openexr_api.cpp b/source/blender/imbuf/intern/openexr/openexr_api.cpp

- index 382d86f2645..eff50b19c31 100644

- --- a/source/blender/imbuf/intern/openexr/openexr_api.cpp

- +++ b/source/blender/imbuf/intern/openexr/openexr_api.cpp

- @@ -38,8 +38,10 @@

-  #include <ImfChannelList.h>

-  #include <ImfCompression.h>

-  #include <ImfCompressionAttribute.h>

- +#include <ImfFrameBuffer.h>

-  #include <ImfIO.h>

-  #include <ImfInputFile.h>

- +#include <ImfInt64.h>

-  #include <ImfOutputFile.h>

-  #include <ImfPixelType.h>

-  #include <ImfStandardAttributes.h>

@@ -0,0 +1,15 @@ 

+ diff --git a/CMakeLists.txt b/CMakeLists.txt

+ index 75f5795db68..d50686adfb0 100644

+ --- a/CMakeLists.txt

+ +++ b/CMakeLists.txt

+ @@ -754,10 +754,6 @@ endif()

+  set_and_warn_dependency(WITH_PYTHON WITH_CYCLES        OFF)

+  set_and_warn_dependency(WITH_PYTHON WITH_DRACO         OFF)

+  

+ -if(WITH_DRACO AND NOT WITH_PYTHON_INSTALL)

+ -  message(STATUS "WITH_DRACO requires WITH_PYTHON_INSTALL to be ON, disabling WITH_DRACO for now")

+ -  set(WITH_DRACO OFF)

+ -endif()

+  

+  # enable boost for cycles, audaspace or i18n

+  # otherwise if the user disabled

@@ -0,0 +1,21 @@ 

+ diff --git a/io_scene_gltf2/io/com/gltf2_io_draco_compression_extension.py b/io_scene_gltf2/io/com/gltf2_io_draco_compression_extension.py

+ index e7518ac4..c0d78564 100644

+ --- a/io_scene_gltf2/io/com/gltf2_io_draco_compression_extension.py

+ +++ b/io_scene_gltf2/io/com/gltf2_io_draco_compression_extension.py

+ @@ -13,6 +13,7 @@

+  # limitations under the License.

+  

+  import os

+ +import site

+  import sys

+  from pathlib import Path

+  import bpy

+ @@ -30,7 +31,7 @@ def dll_path() -> Path:

+      python_lib = Path('{v[0]}.{v[1]}/python/lib'.format(v=bpy.app.version))

+      python_version = 'python{v[0]}.{v[1]}'.format(v=sys.version_info)

+  

+ -    path = os.environ.get('BLENDER_EXTERN_DRACO_LIBRARY_PATH')

+ +    path = site.getsitepackages()[0]

+      if path is None:

+          path = {

+              'win32': blender_root / python_lib / 'site-packages',

file modified
+29 -31
@@ -6,6 +6,7 @@ 

  # This package comes from Artix

  # Parabola changes:

  # - elogind and libelogind: do not provide {lib,}elogind=$pkgver, it's ridiculous

+ # - elogind: do not provide systemd-tools, openrc will conflict it

  # - libelogind: make libsystemd.so a copy of libelogind.so instead of linking it,

  #   so in that way it will provide the correct version according to the

  #   architecture (libsystemd.so=0-64 or libsystemd.so=0-32)
@@ -14,20 +15,20 @@ 

  pkgbase=elogind

  pkgname=('elogind' 'libelogind')

  pkgver=246.10

- pkgrel=2

+ pkgrel=1

  pkgdesc="The systemd project's logind, extracted to a standalone package"

- arch=('x86_64')

- arch+=('i686' 'armv7h')

+ arch=('x86_64' 'i686' 'armv7h')

  url="https://github.com/elogind/elogind"

  license=('GPL' 'LGPL2.1')

- makedepends=('acl' 'intltool' 'libtool' 'gperf' 'gtk-doc' 'polkit' 'dbus'

-             'libseccomp' 'meson' 'kexec-tools' 'openrc' 'libcap')

+ conflicts=('systemd-libsystemd')

+ makedepends=('intltool' 'libtool' 'gperf' 'gtk-doc' 'polkit' 'dbus'

+             'libseccomp' 'meson' 'kexec-tools' 'openrc')

  options=('!libtool')

  source=("${pkgbase}-${pkgver}.tar.gz::https://github.com/elogind/elogind/archive/v${pkgver}.tar.gz"

-         #'elogind.confd' 'elogind.initd'

-         'elogind.sv.initd')

+         'elogind.confd' 'elogind.initd')

  sha256sums=('c490dc158c8f5bca8d00ecfcc7ad5af24d1c7b9e59990a0b3b1323996221a922'

-             'b4097e85f81f37d8529eb57563813e94b7c7afb9931d892907d805093187761b')

+             '344db76bf8aadfba4363c63aacd93c945a647bd5e425d756cbfd9cb4453afc66'

+             '2fc375b3aa61cb63b16c55840acaa69d26b16a01d393ee129d77c804efdac278')

  

  build() {

      local meson_options=(
@@ -38,7 +39,6 @@ 

          -Ddefault-hierarchy=hybrid

          -Dcgroup-controller=openrc

          -Ddefault-kill-user-processes=false

-         -Dman=true

      )

  

      arch-meson "$pkgbase-${pkgver}" build "${meson_options[@]}"
@@ -52,46 +52,44 @@ 

  

  package_elogind() {

      pkgdesc="The systemd project's logind, extracted to a standalone package"

-     provides=("systemd=${pkgver}" 'logind')

-     depends=('acl' 'dbus' 'libseccomp' 'libelogind' 'kexec-tools' 'udev')

+     provides=("systemd=${pkgver}")

+     depends=('pam' 'dbus' 'libseccomp' 'libelogind' 'kexec-tools' 'udev')

      optdepends=('polkit: polkit support')

      backup=('etc/elogind/logind.conf')

  

      provides+=("${pkgname}-openrc")

-     conflicts=('systemd-udev' "${pkgname}-openrc")

+     conflicts+=('systemd-udev' "${pkgname}-openrc")

      replaces=("${pkgname}-openrc")

  

      DESTDIR="$pkgdir" meson install -C build

  

-     ln -sfv libelogind.pc "${pkgdir}"/usr/lib/pkgconfig/libsystemd.pc

+     ln -sfv libelogind.pc ${pkgdir}/usr/lib/pkgconfig/libsystemd.pc

  

-     install -dm755 "${srcdir}"/_libelogind

-     mv -v "${pkgdir}"/usr/lib/libelogind*.so* "${srcdir}"/_libelogind

+     install -dm755 ${srcdir}/_libelogind

+     mv -v ${pkgdir}/usr/lib/libelogind*.so* ${srcdir}/_libelogind

  

-     install -d "${pkgdir}"/{etc,usr/lib}/elogind/{logind,sleep}.conf.d

+     # Init scripts

+     install -Dm755 ${srcdir}/elogind.initd ${pkgdir}/etc/init.d/elogind

+     install -Dm755 ${srcdir}/elogind.confd ${pkgdir}/etc/conf.d/elogind

  

-     # Init script

-     #install -Dm755 "${srcdir}"/elogind.initd "${pkgdir}"/etc/init.d/elogind

-     #install -Dm755 "${srcdir}"/elogind.confd "${pkgdir}"/etc/conf.d/elogind

-     install -Dm755 "${srcdir}"/elogind.sv.initd "${pkgdir}"/etc/init.d/elogind

- 

-     install -d "${pkgdir}"/etc/runlevels/boot

-     ln -sf /etc/init.d/elogind "${pkgdir}"/etc/runlevels/boot/elogind

+     install -d "${pkgdir}/etc/runlevels/boot"

+     ln -sf "/etc/init.d/elogind" "${pkgdir}/etc/runlevels/boot/elogind"

  }

  

  package_libelogind(){

      pkgdesc="elogind client libraries"

-     provides=('libelogind.so' 'liblogind')

-     provides+=("libsystemd=${pkgver}" "systemd-libs=${pkgver}"

+     groups=('base-devel')

+     provides=('libelogind.so'

+              "libsystemd=${pkgver}" "systemd-libs=${pkgver}"

               'libsystemd.so')

-     conflicts=('libsystemd.so')

+     conflicts+=('libsystemd.so')

      depends=('libcap' 'libudev')

  

-     cd "${pkgbase}-${pkgver}"

+     cd ${pkgbase}-${pkgver}

  

-     install -dm755 "${pkgdir}"/usr/lib

-     mv "${srcdir}"/_libelogind/libelogind*.so* "${pkgdir}"/usr/lib

+     install -dm755 ${pkgdir}/usr/lib

+     mv ${srcdir}/_libelogind/libelogind*.so* ${pkgdir}/usr/lib

  

-     install -m755 "${pkgdir}"/usr/lib/libelogind.so "${pkgdir}"/usr/lib/libsystemd.so

-     ln -sfv libsystemd.so "${pkgdir}"/usr/lib/libsystemd.so.0

+     install -m755 ${pkgdir}/usr/lib/libelogind.so ${pkgdir}/usr/lib/libsystemd.so

+     ln -sfv libsystemd.so ${pkgdir}/usr/lib/libsystemd.so.0

  }

@@ -7,29 +7,27 @@ 

  # Contributor (Arch): Valentine Sinitsyn <e_val@inbox.ru>

  

  pkgbase=networkmanager

- pkgname=(networkmanager libnm nm-cloud-setup)

- pkgver=1.32.2

- pkgrel=1

+ pkgname=(networkmanager libnm)

+ pkgver=1.30.4

+ pkgrel=3

  pkgrel+=.nonsystemd1

  pkgdesc="Network connection manager and user applications"

  url="https://wiki.gnome.org/Projects/NetworkManager"

- arch=(x86_64)

- arch+=(i686 armv7h)

- license=(GPL2)

+ arch=(x86_64 i686 armv7h)

+ license=(GPL2 LGPL2.1)

  _pppver=2.4.9

- makedepends=(intltool dhclient dhcpcd iptables-nft gobject-introspection gtk-doc

-              "ppp=$_pppver" modemmanager iproute2 nss polkit wpa_supplicant curl

-              logind libmm-glib libnewt libndp libteam nftables vala perl-yaml

-              python-gobject git vala jansson bluez-libs glib2-docs iwd dnsmasq

-              openresolv libpsl audit meson)

+ makedepends=(intltool dhclient iptables gobject-introspection gtk-doc "ppp=$_pppver" modemmanager

+              iproute2 nss polkit wpa_supplicant curl elogind libmm-glib

+              libnewt libndp libteam vala perl-yaml python-gobject git vala jansson bluez-libs

+              glib2-docs dhcpcd iwd dnsmasq openresolv libpsl audit meson)

  checkdepends=(libx11 python-dbus)

- _commit=bf1b09702ed442a3efe426c8ceba4ef1e6bb1902  # tags/1.20.6^0

+ _commit=a3e45da9f984d58e3b76d6ca064033541d819eca  # tags/1.30.4^0

  source=("git+https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git#commit=$_commit"

          NetworkManager.{confd,initd} 10-openrc-status)

  sha256sums=('SKIP'

              '4594573f01fe5e04b6dde4525796acf909158591bdcefd662ec23fe0d1c3e1bd'

-             'eaf7d210540ed9f4c6b4ba81ddbb30a2aa5ce8b528057f7d64ce3478981f88e4'

-             'd32a21c0683cf7a09370b35b7e3d3b3f28f5d4d242ecde2c866cfb400b94bcbe')

+             '861445d46e8863dca26a91018da3dd9fee6a64467a93e7512774dfd88914539d'

+             '1535237db113a76261d6f1ce0b24a55e956934b0c1c59e9fd624f621961327b6')

  

  pkgver() {

    cd NetworkManager
@@ -38,53 +36,44 @@ 

  

  prepare() {

    cd NetworkManager

+ 

+   # https://bugs.archlinux.org/task/70710

+   git cherry-pick -n 8acad5a20cc61081438294efc634c0e245452e35

  }

  

  build() {

    local meson_args=(

-     # system paths

      -D dbus_conf_dir=/usr/share/dbus-1/system.d

- 

-     # platform

      -D dist_version="$pkgver-$pkgrel"

      -D session_tracking_consolekit=false

      -D suspend_resume=elogind

      -D modify_system=true

      -D polkit_agent=true

      -D selinux=false

-     -D systemdsystemunitdir=no

-     -D session_tracking=elogind

-     -D systemd_journal=false

- 

-     # features

      -D iwd=true

      -D pppd_plugin_dir=/usr/lib/pppd/$_pppver

      -D teamdctl=true

-     -D nm_cloud_setup=true

      -D bluez5_dun=true

      -D ebpf=true

- 

-     # configuration plugins

      -D config_plugins_default=keyfile

- 

-     # handlers for resolv.conf

-     -D netconfig=no

-     -D config_dns_rc_manager_default=symlink

- 

-     # miscellaneous

      -D vapi=true

      -D docs=true

      -D more_asserts=no

      -D more_logging=false

      -D qt=false

+     -D systemdsystemunitdir=no

+     -D session_tracking=elogind

+     -D systemd_journal=false

    )

  

    arch-meson NetworkManager build "${meson_args[@]}"

-   meson compile -C build

+   ninja -C build

  }

  

  check() {

-   meson test -C build --print-errorlogs

+   # iproute2 bug

+   # https://gitlab.freedesktop.org/NetworkManager/NetworkManager/commit/be76d8b624fab99cbd76092ff511e6adc305279c

+   meson test -C build --print-errorlogs || :

  }

  

  _pick() {
@@ -99,77 +88,58 @@ 

  

  package_networkmanager() {

    depends=(libnm iproute2 polkit wpa_supplicant libmm-glib libnewt libndp libteam curl

-            bluez-libs libpsl audit mobile-broadband-provider-info elogind)

+            bluez-libs libpsl audit elogind)

    optdepends=('dnsmasq: connection sharing'

-               'nftables: connection sharing'

-               'iptables: connection sharing'

                'bluez: Bluetooth support'

                'ppp: dialup connection support'

                'modemmanager: cellular network support'

-               'iwd: wpa_supplicant alternative'

-               'dhclient: alternative DHCP client'

-               'dhcpcd: alternative DHCP client'

-               'openresolv: alternative resolv.conf manager'

-               'firewalld: firewall support')

+               'iwd: wpa_supplicant alternative')

    provides=($pkgname-{elogind,openrc})

    replaces=($pkgname-{elogind,openrc})

    backup=(etc/NetworkManager/NetworkManager.conf)

+   groups=(gnome)

  

-   meson install -C build --destdir "$pkgdir"

- 

-   cd "$pkgdir"

+   DESTDIR="$pkgdir" meson install -C build

  

    # /etc/NetworkManager

-   install -d etc/NetworkManager/{conf,dnsmasq}.d

-   install -dm700 etc/NetworkManager/system-connections

-   install -m644 /dev/stdin etc/NetworkManager/NetworkManager.conf <<END

+   install -d "$pkgdir"/etc/NetworkManager/{conf,dnsmasq}.d

+   install -dm700 "$pkgdir/etc/NetworkManager/system-connections"

+   install -m644 /dev/stdin "$pkgdir/etc/NetworkManager/NetworkManager.conf" <<END

  # Configuration file for NetworkManager.

  # See "man 5 NetworkManager.conf" for details.

  END

  

    # packaged configuration

-   install -Dm644 /dev/stdin usr/lib/NetworkManager/conf.d/20-connectivity.conf <<END

+   install -Dm644 /dev/stdin "$pkgdir/usr/lib/NetworkManager/conf.d/20-connectivity.conf" <<END

  [connectivity]

- uri=http://ping.archlinux.org/nm-check.txt

+ uri=http://www.archlinux.org/check_network_status.txt

  END

  

-   shopt -s globstar

- 

-   _pick libnm usr/include/libnm

-   _pick libnm usr/lib/girepository-1.0/NM-*

-   _pick libnm usr/lib/libnm.*

-   _pick libnm usr/lib/pkgconfig/libnm.pc

-   _pick libnm usr/share/gir-1.0/NM-*

-   _pick libnm usr/share/gtk-doc/html/libnm

-   _pick libnm usr/share/vala/vapi/libnm.*

- 

-   _pick nm-cloud-setup "$pkgdir"/usr/lib/**/*nm-cloud-setup*

- #  _pick nm-cloud-setup "$pkgdir"/usr/share/man/*/nm-cloud-setup* (Parabola)

- 

-   # Restore empty dir

- # mkdir "$pkgdir/usr/lib/NetworkManager/dispatcher.d/no-wait.d" (Parabola)

+ ### Split libnm

+   _pick libnm "$pkgdir"/usr/include/libnm

+   _pick libnm "$pkgdir"/usr/lib/girepository-1.0/NM-*

+   _pick libnm "$pkgdir"/usr/lib/libnm.*

+   _pick libnm "$pkgdir"/usr/lib/pkgconfig/libnm.pc

+   _pick libnm "$pkgdir"/usr/share/gir-1.0/NM-*

+   _pick libnm "$pkgdir"/usr/share/gtk-doc/html/libnm

+   _pick libnm "$pkgdir"/usr/share/vala/vapi/libnm.*

  

    # Init script

    install -Dm755 ${srcdir}/NetworkManager.confd ${pkgdir}/etc/conf.d/NetworkManager

    install -Dm755 ${srcdir}/NetworkManager.initd ${pkgdir}/etc/init.d/NetworkManager

    install -Dm755 "${srcdir}/10-openrc-status" "${pkgdir}/etc/NetworkManager/dispatcher.d/10-openrc-status"

  

+   sed -e 's|#!/sbin/openrc-run|#!/usr/bin/openrc-run|g' \

+       -e 's|/var/run|/run|g' \

+       -e 's|/usr/sbin|/usr/bin|g' \

+       -e 's|use consolekit|use consolekit elogind|' \

+       -i ${pkgdir}/etc/init.d/NetworkManager

  }

  

  package_libnm() {

    pkgdesc="NetworkManager client library"

-   depends=(glib2 nss util-linux-libs jansson libelogind)

-   license=(LGPL)

-   provides=(libnm.so)

- 

+   depends=(glib2 nss libutil-linux jansson libelogind)

    mv libnm/* "$pkgdir"

  }

  

- package_nm-cloud-setup() {

-   pkgdesc="Automatically configure NetworkManager in cloud"

-   depends=(networkmanager)

- 

-   mv nm-cloud-setup/* "$pkgdir"

- }

- 

  # vim:set sw=2 et:

file modified
+5 -28
@@ -9,42 +9,28 @@ 

  pkgbase=openrc

  pkgname=('openrc' 'openrc-bash-completions' 'openrc-zsh-completions'

           'openrc-init' 'openrc-sysvinit' 'openrc-net')

- pkgver=0.42.1

- pkgrel=7

+ pkgver=0.43.3

+ pkgrel=1

  pkgdesc="Gentoo's universal init system"

  arch=('x86_64' 'i686' 'armv7h')

  url="https://github.com/OpenRC/openrc"

  license=('BSD2')

  source=("${pkgbase}-${pkgver}.tar.gz::${url}/archive/${pkgver}.tar.gz"

-         "revert.patch::${url}/commit/1801561c2d36c330df7fd02c7508f503a61ff5ba.patch"

          "${pkgbase}.logrotate"

          'openrc-hook'

          '30-openrc-upgrade.hook'

          '30-sysctl.hook'

          'sysctl.conf'

          '30-binfmt.hook'

-         'kmod-static-nodes.initd'

-         gcc-10-fix.patch::${url}/commit/375ef42393f3dc6edbaa2cb70c79b2366072db38.patch

-         supervise-daemon-fix.patch::${url}/commit/6deda13754f1b60245945e953cce8d97e40e86fc.patch

-         openrc-shutdown-fix.patch::${url}/commit/fd852865e06a74ecf8b77ff534fa8053e020160f.patch

-         posix-compliant-grep.patch::${url}/commit/a7e7fd2b37a7666f26c2d4de9386b2d04f583b41.patch

-         binfmt-fix.patch::${url}/commit/eb610859519292c6164c4ba601d22e642c306beb.patch

-         cgroup2-verify.patch::${url}/commit/87cfad3d6cd619c6090e8209092448ae68279b0c.patch)

- sha256sums=('91a01ca6d930a0688fb91338209985de57cac7aa2d37feddacb78fd3d95308e2'

-             '5211012d0e1bdfc1a32113cee5a2eec3a2be4b3549f88216cdecbadd6ca46d81'

+         'kmod-static-nodes.initd')

+ sha256sums=('968e81743a1de7a2348590b3b3286d6af5baf96da28fa1e6364e24f8203fc3b6'

              '0b44210db9770588bd491cd6c0ac9412d99124c6be4c9d3f7d31ec8746072f5c'

              '7de1e65f48ba31fc015cfb77be167b41aabdf0f20cb6617ecf3f4c3ca434c9e8'

              'a3fda2186e023ae60c0e0d3806ffeb95effe675acea03cdfd0bf30e8f1c188d4'

              '28ec075d30096bd54499e994f76f8526460474f1e4c33607045c1a71b0684263'

              '860d5b9ae60e13633bd94023c222fa1ef918a02db3ce2e3255cdd6bb9eef047e'

              '28aa413fd78bca98bb23294eeb3f49149825a2c2f97a7ee10039385f5e8e50e9'

-             '3ecbe7761b92a123a5a3d395ec3d9e090b0dfba7910a5987b4a2298c20a7e571'

-             'addb1bf115b811fba3d120f5c68535ec07f32a55e570b661f1e5575f74327bac'

-             '654dada5ffe56d6ae10d0ea4f9cb62c8c6c39a5398cd02561419a8bbf3f686b7'

-             '5576a8b6c9fbe79ede027ed053f922da60d1cbe818803677f5aa5532f98ffac4'

-             '46f6e809aabb629212a739af7f5177930e9c4a7f2adfdfc59911d778d3716ec9'

-             '7e5d7dc888327ef99637fa7207ac9470d72cc37198ddd7ba2cdf72d10a1c7031'

-             '41c6598da76bcdcdc8d9349f559bc6b587a6f6dec55bf7c79669af2b28af43e1')

+             '3ecbe7761b92a123a5a3d395ec3d9e090b0dfba7910a5987b4a2298c20a7e571')

  

  _args=(

      BRANDING='Parabola GNU/Linux-libre'
@@ -64,15 +50,6 @@ 

  prepare(){

      cd "${srcdir}/${pkgbase}-${pkgver}"

      sed -i 's:0444:0644:' mk/sys.mk

-     patch -Np 1 -i ../gcc-10-fix.patch

-     patch -Np 1 -i ../supervise-daemon-fix.patch

-     patch -Np 1 -i ../openrc-shutdown-fix.patch

-     patch -Np 1 -i ../posix-compliant-grep.patch

-     patch -Np 1 -i ../binfmt-fix.patch

-     patch -Np 1 -i ../cgroup2-verify.patch

- 

-     # make bootmisc work with sysvinit too

-     patch -RNp1 -i ../revert.patch

  }

  

  check(){

file modified
+40 -33
@@ -1,64 +1,71 @@ 

  # Maintainer: David P. <megver83@parabola.nu>

- # Maintainer (Arch): Jan de Groot <jgc@archlinux.org>

+ # Maintainer (arch): Jan Alexander Steffens (heftig) <heftig@archlinux.org>

+ # Contributor: Jan de Groot <jgc@archlinux.org>

  

  pkgname=polkit

- pkgver=0.118

- pkgrel=1

+ pkgver=0.120

+ pkgrel=3

  pkgrel+=.nonsystemd1

  pkgdesc="Application development toolkit for controlling system-wide privileges"

- arch=(x86_64 i686 armv7h)

+ arch=(x86_64)

+ arch+=(i686 armv7h)

  license=(LGPL)

  url="https://www.freedesktop.org/wiki/Software/polkit/"

- depends=(glib2 pam expat elogind js78)

- makedepends=(intltool gtk-doc gobject-introspection git autoconf-archive)

+ depends=(glib2 pam expat systemd js78)

+ depends=( ${depends[*]/systemd/elogind})

+ makedepends=(meson gtk-doc gobject-introspection git)

+ checkdepends=(python-dbusmock)

  backup=(etc/pam.d/polkit-1)

  provides=(polkit-elogind)

  replaces=(polkit-elogind polkit-consolekit)

- _commit=ff4c2144f0fb1325275887d9e254117fcd8a1b52 # git tag 0.118

- source=("git+https://gitlab.freedesktop.org/polkit/polkit.git#commit=$_commit"

-         '99-parabola.rules'

-         'elogind-configure-fix.patch')

- sha256sums=('SKIP'

-             'd28d6ecaf7682860e2b3768bb266bd94313546b7cd0ef3c2eace7b1576c47adb'

-             'd90b2a95aa3e9e1ebf9369c038c144e04900e095c5405bc4ba4901c31bf3f59b')

+ _commit=92b910ce2273daf6a76038f6bd764fa6958d4e8e  # tags/0.120

+ source=("git+https://gitlab.freedesktop.org/polkit/polkit.git#commit=$_commit")

+ source+=('99-parabola.rules'

+          'elogind-configure-fix.patch'

+          'meson-0.61.diff')

+ sha256sums=('SKIP')

+ sha256sums=('d28d6ecaf7682860e2b3768bb266bd94313546b7cd0ef3c2eace7b1576c47adb'

+             'd90b2a95aa3e9e1ebf9369c038c144e04900e095c5405bc4ba4901c31bf3f59b'

+             '45d08bbb76e1e22ca8e698df04652b7aceaded34f9b76ce6b68152fb26b0de8d')

  

  pkgver() {

-   cd $pkgname

+   cd polkit

    git describe --tags | sed 's/-/+/g'

  }

  

  prepare() {

-   cd $pkgname

+   cd polkit

    patch -Np 1 -i ${srcdir}/elogind-configure-fix.patch

-   NOCONFIGURE=1 ./autogen.sh

- }

- 

- build() {

-   cd $pkgname

  

-   ./configure --prefix=/usr --sysconfdir=/etc \

-       --localstatedir=/var --libexecdir=/usr/lib \

-       --enable-libsystemd-login=no --disable-static \

-       --enable-libelogind=yes --with-systemdsystemunitdir=no \

-       --enable-gtk-doc --with-os-type=redhat

+   # CVE-2021-4034

+   git cherry-pick -n a2bf5c9c83b6ae46cbd5c779d3055bff81ded683

  

-   sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool

+   # Fix build with Meson 0.61.0

+   git apply -3 ../meson-0.61.diff

+ }

  

-   make

+ build() {

+   arch-meson polkit build \

+     --prefix=/usr \

+     -D session_tracking=libelogind \

+     -D systemdsystemunitdir=no \

+     -D os_type=redhat \

+     -D examples=true \

+     -D tests=true \

+     -D gtk_doc=true \

+     -D man=true

+   meson compile -C build

  }

  

  check() {

-   cd $pkgname

-   make -k check || :

+   meson test -C build --print-errorlogs -t 3

  }

  

  package() {

-   cd $pkgname

-   make DESTDIR="$pkgdir" install \

-       dbusconfdir=/usr/share/dbus-1/system.d \

-       rulesdir=/usr/share/polkit-1/rules.d

+   meson install -C build --destdir "$pkgdir"

  

    install -d -o root -g 102 -m 750 "$pkgdir"/{etc,usr/share}/polkit-1/rules.d

+   mv "$pkgdir"/{etc,usr/share}/polkit-1/rules.d/50-default.rules

  

    install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/$pkgname.conf" <<END

  u polkitd 102 "PolicyKit daemon"

@@ -0,0 +1,24 @@ 

+ diff --git i/actions/meson.build w/actions/meson.build

+ index 2abaaf3..1e3f370 100644

+ --- i/actions/meson.build

+ +++ w/actions/meson.build

+ @@ -1,7 +1,6 @@

+  policy = 'org.freedesktop.policykit.policy'

+  

+  i18n.merge_file(

+ -  policy,

+    input: policy + '.in',

+    output: '@BASENAME@',

+    po_dir: po_dir,

+ diff --git i/src/examples/meson.build w/src/examples/meson.build

+ index c6305ab..8c18de5 100644

+ --- i/src/examples/meson.build

+ +++ w/src/examples/meson.build

+ @@ -1,7 +1,6 @@

+  policy = 'org.freedesktop.policykit.examples.pkexec.policy'

+  

+  i18n.merge_file(

+ -  policy,

+    input: policy + '.in',

+    output: '@BASENAME@',

+    po_dir: po_dir,

Updated Blender to v3.1.2
32 bit support has been removed
Added Draco patches to resolve the compression option not showing when exporting to glTF
Not particularly sure if pinning to specific dependency versions are actually needed but they can be added back if required

rebased onto dee3845

2 years ago