Package Details: fwupd-git 1.9.10.r640.g96cc2c6bc-1

Git Clone URL: https://aur.archlinux.org/fwupd-git.git (read-only, click to copy)
Package Base: fwupd-git
Description: Simple daemon to allow session software to update firmware
Upstream URL: https://github.com/fwupd/fwupd
Keywords: fwupd
Licenses: LGPL
Conflicts: fwupd
Provides: fwupd, libfwupd.so, libfwupdplugin.so
Submitter: klusark
Maintainer: pychuang
Last Packager: pychuang
Votes: 1
Popularity: 0.000000
First Submitted: 2019-03-19 00:54 (UTC)
Last Updated: 2024-04-01 18:21 (UTC)

Required by (18)

Sources (1)

Latest Comments

1 2 Next › Last »

gcb0 commented on 2024-05-22 19:49 (UTC)

i've merged the code with upstream package and slimmed down the dependencies you have here, which seem to be outdated. Let me know if you want a proper patch.


pkgname="fwupd-daemonless"
pkgbase="fwupd-daemonless"
pkgver=1.9.10.r873.gb4695d4bf
pkgrel=1
pkgdesc="Simple client to allow session software to update firmware."
# ^ with nothing but patches for https://bugs.archlinux.org/task/79614
arch=('x86_64')
url="https://github.com/fwupd/fwupd"
license=(LGPL-2.1-or-later)
depends=(
  bluez
  #diffutils
  #efivar
  flashrom
  fwupd-efi
  #gcab
  glib2
  gnutls
  #gzip
  hicolor-icon-theme
  libarchive
  libcbor
  libdrm
  libgudev
  libgusb
  libjcat
  #liblzma.so
  libmm-glib
  libprotobuf-c.so
  libqmi
  #libsmbios
  #libsystemd.so
  libxmlb
  polkit
  python
  #python-gobject
  sqlite
)
makedepends=(
  'bash-completion'
  'git'
  'gobject-introspection'
  'meson'
  'python-cairo'
  'python-jinja'
  'python-markdown'
  'vala'
  'valgrind'
)
checkdepends=(umockdev python-dbusmock)
source=(
  "${pkgname}::git+https://github.com/fwupd/fwupd.git"
)
  # fwupd.sysusers
conflicts=("${pkgname%-git}")
sha512sums=('SKIP')
b2sums=('SKIP')
pkgver() {
  cd "${srcdir}/${pkgname}"
  git describe --long --tags | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}

prepare() {
  local meson_options=(
    -D b_lto=false
    -D docs=disabled
    -D efi_binary=false
    -D launchd=disabled
    -D man=true
    -D passim=disabled
    -D plugin_powerd=disabled
    -D supported_build=enabled
    -D systemd_unit_user=fwupd
  )
  arch-meson "${srcdir}/${pkgname}" "${srcdir}/build" "${meson_options[@]}"
}
build() {
  meson compile -C "${srcdir}/build" -j 0
}

check() {
  CACHE_DIRECTORY=/tmp meson test -C "${srcdir}/build"
}

_pick() {
  local p="$1" f d; shift
  for f; do
    d="$srcdir/$p/${f#$pkgdir/}"
    mkdir -p "$(dirname "$d")"
    mv "$f" "$d"
    rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
  done
}

package_fwupd-daemonless() {
  depends+=(
    libarchive.so
    libcbor.so
    libcurl.so
    libgudev-1.0.so
    libjson-glib-1.0.so
    libmm-glib.so
    #libpassim.so
    libprotobuf-c.so
    libqmi-glib.so
  )
  optdepends=(
  'udisks2: UEFI firmware upgrade support'
  )
  provides=('libfwupd.so' 'libfwupdplugin.so' "${pkgname%-git}")
# TODO: not sure about all those...
  backup=(
    'etc/fwupd/daemon.conf'
    'etc/fwupd/redfish.conf'
    'etc/fwupd/remotes.d/dell-esrt.conf'
    'etc/fwupd/remotes.d/fwupd-tests.conf'
    'etc/fwupd/remotes.d/lvfs-testing.conf'
    'etc/fwupd/remotes.d/lvfs.conf'
    'etc/fwupd/remotes.d/vendor-directory.conf'
    'etc/fwupd/remotes.d/vendor.conf'
    'etc/fwupd/thunderbolt.conf'
    'etc/fwupd/uefi_capsule.conf'
  )

  DESTDIR="${pkgdir}" meson install -C "${srcdir}/build"
  # meson install -C build --destdir "${pkgdir}"

  # Fixup mode to match polkit
  install -d -o root -g 102 -m 750 "${pkgdir}"/usr/share/polkit-1/rules.d
  # Add fwupd user https://bugs.archlinux.org/task/79653
  #install -D -m644 fwupd.sysusers "${pkgdir}"/usr/lib/sysusers.d/fwupd.conf
  # Remove the tests
  rm -r "${pkgdir}"/usr/{lib,share}/installed-tests/
  # Conflicts with the dbxtool package
  mv "${pkgdir}"/usr/bin/{,fwupd-}dbxtool
  mv "${pkgdir}"/usr/share/man/man1/{,fwupd-}dbxtool.1
  # Remove msr module-load config as it is built-in
  rm "${pkgdir}"/usr/lib/modules-load.d/fwupd-msr.conf
  rmdir "${pkgdir}"/usr/lib/modules-load.d

  #_pick docs "${pkgdir}"/usr/share/doc/{,fwupd/}{libfwupdplugin,libfwupd}
}

#package_fwupd-docs() {
#  pkgdesc="Simple daemon to allow session software to update firmware - documentation"
#  depends=()
#  mv docs/* "${pkgdir}"
#}

MS-DTYP commented on 2024-04-26 06:46 (UTC)

The passim module is disabled, thank you! Better than original package!

pychuang commented on 2024-04-01 18:25 (UTC)

Updated. Thanks!

darkbasic commented on 2024-03-22 14:46 (UTC)

python-dbusmock is required as well.

pychuang commented on 2023-12-29 18:52 (UTC)

Thanks! Updated

Piroro-hs commented on 2023-12-28 13:49 (UTC)

It seems python-jinja is required for makedepends.

pychuang commented on 2021-09-28 19:09 (UTC)

If you used yay and encountered the following error:

==> ERROR: pkgver is not allowed to be empty.
==> ERROR: pkgver() generated an invalid version: 

clean yay's cached data and redo the upgrade (by either removing ~/.cache/yay/fwupd-git or executing yay -Scc).

This is caused by that the upstream just changed the branch name from master to main.

pychuang commented on 2021-09-21 23:45 (UTC) (edited on 2021-09-21 23:47 (UTC) by pychuang)

@thx1138 It seems fwupd relies on pkg-config to find dependencies. However, flashrom-git does not install the corresponding pkg-config file to the system, so fwupd-git cannot find it.

(The official flashrom does install a pkg-config file, so there's no issue using the official flashrom.)

I think the proper solution should be asking the maintainer of flashrom-git to install the pkg-config file.

thx1138 commented on 2021-09-21 18:17 (UTC)

Fails to recognize "flashrom-git".

flashrom-git does have:

 Provides        : flashrom

but fwupd-git fails to recognize the package:

...
Run-time dependency flashrom found: NO (tried pkgconfig and cmake)
Looking for a fallback subproject for the dependency flashrom

fwupd-git/meson.build:460:2: ERROR: Automatic wrap-based subproject downloading is disabled

RX14 commented on 2021-06-18 13:49 (UTC)

Needs a dependency on gi-docgen