SHA256
1
0
forked from pool/appimaged

- Add gcc14,patch:Fix build using stricter gcc 14.

OBS-URL: https://build.opensuse.org/package/show/system:packagemanager/appimaged?expand=0&rev=9
This commit is contained in:
Adrian Schröter 2024-11-18 15:03:38 +00:00 committed by Git OBS Bridge
commit 5c28990a1c
9 changed files with 231 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

3
AppImageKit-10.obscpio Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:31a49915e981c6f06e0e091f4d41a8277c48638154c8bf72b1c94e897293d883
size 1638412

5
AppImageKit.obsinfo Normal file
View File

@ -0,0 +1,5 @@
name: AppImageKit
version: 10
mtime: 1510255277
commit: 6f3138f02701a7b52959f16f2ee6b540bf5b3dc5

15
_service Normal file
View File

@ -0,0 +1,15 @@
<services>
<service name="obs_scm" mode="disabled">
<param name="url">https://github.com/AppImage/AppImageKit.git</param>
<param name="revision">10</param>
<param name="version">10</param>
<param name="submodules">enable</param>
<param name="scm">git</param>
</service>
<service mode="disabled" name="set_version" />
<service mode="buildtime" name="tar" />
<service mode="buildtime" name="recompress">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
</services>

48
appimaged.changes Normal file
View File

@ -0,0 +1,48 @@
-------------------------------------------------------------------
Mon Nov 18 13:48:22 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Add gcc14,patch:Fix build using stricter gcc 14.
-------------------------------------------------------------------
Sun Feb 28 09:56:55 UTC 2021 - Wolfgang Rosenauer <wr@rosenauer.org>
- use current repo as source
- changed service to default.target
-------------------------------------------------------------------
Wed Jan 24 07:46:07 UTC 2018 - adrian@suse.de
- update to version 10
-------------------------------------------------------------------
Tue May 30 12:23:38 UTC 2017 - adrian@suse.de
- prepare for factory submission
-------------------------------------------------------------------
Mon Feb 27 07:37:46 UTC 2017 - adrian@suse.de
- update to version 8
- package it in a way to make it usable for rpm2appimage for OBS
-------------------------------------------------------------------
Tue Jan 24 18:11:11 UTC 2017 - jengelh@inai.de
- Resolve some typographical issues in description.
Use %setup's options instead of tar.
-------------------------------------------------------------------
Tue Jan 24 11:57:18 UTC 2017 - i@marguerite.su
- packaging as native distro package instead of appimage
- add a systemd per-user service appimaged.service
- add mkappimagedir script to create skeleton AppImage.Dir
for the end users.
-------------------------------------------------------------------
Tue Dec 20 10:09:03 UTC 2016 - i@marguerite.su
- initial version
- add appimagekit-abuild.patch

12
appimaged.service Normal file
View File

@ -0,0 +1,12 @@
[Unit]
Description=AppImage daemon
After=basic.target
[Service]
ExecStart=/usr/bin/appimaged
Restart=always
RestartSec=5s
StartLimitInterval=0
[Install]
WantedBy=default.target

112
appimaged.spec Normal file
View File

@ -0,0 +1,112 @@
#
# spec file for package appimaged
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: appimaged
Version: 10
Release: 0
URL: http://www.appimage.org
Summary: Daemon handles (un)registering AppImages with the system
License: MIT
Group: System/Daemons
Source0: AppImageKit-%version.tar.xz
Source1: appimaged.service
Patch0: gcc14,patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: cairo-devel
BuildRequires: fuse-devel
BuildRequires: glib2-devel
BuildRequires: inotify-tools-devel
BuildRequires: libarchive-devel
BuildRequires: libpng-devel
BuildRequires: libtool
BuildRequires: openssl-devel
BuildRequires: systemd-rpm-macros
BuildRequires: xz-devel
Requires: zsync
%description
appimaged is a daemon that handles registering and unregistering AppImages
with the system (e.g., menu entries, icons, MIME types, binary delta updates,
and such).
The package comes also with appimage.validate CLI tool to verify signature
of AppImage files.
%prep
%autosetup -p1 -n AppImageKit-%version
sed -i -e s,^version=.*,version=%version, build.sh
%build
export PATH=$PWD/bin:$PATH
# Upstream squashfuse is not providing a lib, so it gets patched to produce one here
cd squashfuse
patch -p1 < ../squashfuse.patch
export ACLOCAL_FLAGS="-I /usr/share/aclocal"
libtoolize --force
aclocal
autoheader
automake --force-missing --add-missing
autoreconf -fi || true # Errors out, but the following succeeds then?
autoconf
sed -i '/PKG_CHECK_MODULES.*/,/,:./d' configure # https://github.com/vasi/squashfuse/issues/12
./configure --disable-demo --disable-high-level --without-lzo --without-lz4
make
cd ..
CC=gcc
$CC -std=gnu99 -o appimaged -I./squashfuse/ ./getsection.c ./notify.c ./elf.c ./appimaged.c \
-D_FILE_OFFSET_BITS=64 -DHAVE_LIBARCHIVE3=0 -DVERSION_NUMBER=\"%version\" \
./squashfuse/.libs/libsquashfuse.a ./squashfuse/.libs/libfuseprivate.a \
-Wl,-Bdynamic -linotifytools -larchive \
-Wl,--as-needed \
$(pkg-config --cflags --libs glib-2.0) \
$(pkg-config --cflags --libs gio-2.0) \
$(pkg-config --cflags --libs cairo) \
-ldl -lpthread -lz -llzma
# basic tool for validation of downloaded appimage files
$CC -o appimage.validate ./getsection.c ./validate.c -Wl,-Bdynamic -lssl -lcrypto \
-Wl,--as-needed $(pkg-config --cflags --libs glib-2.0) -lz -ldl
%install
mkdir -p %{buildroot}%{_bindir}
install -m 0755 appimaged appimage.validate %{buildroot}%{_bindir}
# install systemd per user service
mkdir -p %{buildroot}%{_userunitdir}
install -m 0644 %{SOURCE1} %{buildroot}%{_userunitdir}/appimaged.service
%post
%systemd_user_post appimaged.service
%preun
%systemd_user_preun appimaged.service
%postun
%systemd_user_postun appimaged.service
%files
%defattr(-,root,root)
%license LICENSE
%doc README.md
%{_bindir}/appimage.validate
%{_bindir}/appimaged
%{_userunitdir}/appimaged.service
%changelog

12
gcc14,patch Normal file
View File

@ -0,0 +1,12 @@
Index: AppImageKit/squashfuse/ll.c
===================================================================
--- AppImageKit.orig/squashfuse/ll.c
+++ AppImageKit/squashfuse/ll.c
@@ -33,6 +33,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
static const double SQFS_TIMEOUT = DBL_MAX;