diff --git a/pkg.info b/pkg.info index 42b60b8..52b4542 100644 --- a/pkg.info +++ b/pkg.info @@ -1,9 +1,28 @@ name: polkit description: Toolkit for defining and handling authorizations -version: 126 +version: "126" +revision: 2 url: https://github.com/polkit-org/polkit license: LGPL2-or-later architecture: any -depends: ["docbook-xsl-nons","duktape","elogind","expat","glib","glibc","pam","sysusers"] -make_depends: ["dbus","gobject-introspection","meson","python-setuptools"] type: source +depends: + - docbook-xsl-nons + - duktape + - elogind + - expat + - glib + - glibc + - pam + - sysusers +make_depends: + - dbus + - gobject-introspection + - gtk-doc + - meson + - python-setuptools +downloads: + - url: https://github.com/polkit-org/polkit/archive/${BPM_PKG_VERSION}/polkit-${BPM_PKG_VERSION}.tar.gz + extract_to: ${BPM_SOURCE} + extract_strip_components: 1 + checksum: 2814a7281989f6baa9e57bd33bbc5e148827e2721ccef22aaf28ab2b376068e8 diff --git a/source-files/elogind-support.patch b/source-files/elogind-support.patch new file mode 100644 index 0000000..287bc22 --- /dev/null +++ b/source-files/elogind-support.patch @@ -0,0 +1,34 @@ +From 55ee1b70456eca8281dda9612c485c619122f202 Mon Sep 17 00:00:00 2001 +From: Jan Rybar +Date: Tue, 14 Jan 2025 13:47:54 +0100 +Subject: [PATCH] meson: fix unused dependency, fixes elogind FTBFS + +polkit-126 could not be built from source with elogind session service due +to wrong dependencies in meson.build. + +Author: @markhindley +--- + src/polkitbackend/meson.build | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/src/polkitbackend/meson.build b/src/polkitbackend/meson.build +index fc35e195..a807b41b 100644 +--- a/src/polkitbackend/meson.build ++++ b/src/polkitbackend/meson.build +@@ -37,7 +37,6 @@ deps += thread_dep + + if enable_logind + sources += files('polkitbackendsessionmonitor-systemd.c') +- + deps += logind_dep + else + sources += files('polkitbackendsessionmonitor.c') +@@ -73,7 +72,7 @@ executable( + program, + program + '.c', + include_directories: top_inc, +- dependencies: libpolkit_gobject_dep, ++ dependencies: deps, + c_args: c_flags, + link_with: libpolkit_backend, + install: true, diff --git a/source-files/polkitd.esv b/source-files/polkitd.esv index a44305a..e0d2f80 100644 --- a/source-files/polkitd.esv +++ b/source-files/polkitd.esv @@ -1,6 +1,5 @@ name: polkit description: Start polkit daemon -dependencies: ["dbus"] type: background start_cmd: /usr/lib/polkit-1/polkitd exit_method: kill diff --git a/source.sh b/source.sh index 1ad8f58..1992c63 100644 --- a/source.sh +++ b/source.sh @@ -2,49 +2,38 @@ # BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE # BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT -DOWNLOAD="https://github.com/polkit-org/polkit/archive/${BPM_PKG_VERSION}/polkit-${BPM_PKG_VERSION}.tar.gz" -# Removes systemd dependency when using elogind -DOWNLOAD_PATCH="https://github.com/polkit-org/polkit/commit/55ee1b70456eca8281dda9612c485c619122f202.patch" -FILENAME="${DOWNLOAD##*/}" -FILENAME_PATCH="${DOWNLOAD_PATCH##*/}" - # The prepare function is executed in the root of the temp directory # This function is used for downloading files and putting them into the correct location prepare() { - wget "$DOWNLOAD" - wget "$DOWNLOAD_PATCH" - tar -xvf "$FILENAME" --strip-components=1 -C "$BPM_SOURCE" - cd "$BPM_SOURCE" - git apply ../${FILENAME_PATCH} + patch -Np1 -i "$BPM_WORKDIR"/elogind-support.patch } # The build function is executed in the source directory # This function is used to compile the source code build() { - mkdir build - cd build - meson setup --prefix=/usr \ --libdir=/usr/lib \ --buildtype=release \ -Dman=true \ + -Dgtk_doc=true \ -Dos_type=lfs \ -Dpolkitd_uid=9 \ -Dpolkitd_user=polkitd \ -Dsession_tracking=elogind \ -Dsystemdsystemunitdir=/tmp \ - -Dtests=false .. - ninja + -Dtests=false build + meson compile -C build } # The package function is executed in the source directory # This function is used to move the compiled files into the output directory -package() { - cd build - - DESTDIR="$BPM_OUTPUT" ninja install +package() { + meson install -C build --destdir="$BPM_OUTPUT" + # Install esvm service install -Dm644 "$BPM_WORKDIR"/polkitd.esv "$BPM_OUTPUT"/etc/esvm/services/polkitd.esv - install -Dm644 ../COPYING "$BPM_OUTPUT"/usr/share/licenses/polkit/COPYING + + # Install package license + install -Dm644 "$BPM_SOURCE"/COPYING "$BPM_OUTPUT"/usr/share/licenses/polkit/COPYING }