From f82c08f0cbcabfc7505c52dca3882d1b4e4bae58 Mon Sep 17 00:00:00 2001 From: Cappy Ishihara Date: Fri, 23 Dec 2022 23:00:41 +0700 Subject: [PATCH 1/7] update appimagelauncher and stuff Signed-off-by: Cappy Ishihara From be74bc8f3579551bf5c693848fab7da91adc8112 Mon Sep 17 00:00:00 2001 From: Cappy Ishihara Date: Mon, 26 Dec 2022 18:34:55 +0700 Subject: [PATCH 2/7] Added libappimageupdate, nlohmann-json, and bumped appimagelauncher --- anda/lib/libappimageupdate/anda.hcl | 5 + .../libappimageupdate/libappimageupdate.spec | 80 ++++++++++++++ anda/lib/nlohmann-json/anda.hcl | 5 + anda/lib/nlohmann-json/nlohmann-json.spec | 102 ++++++++++++++++++ .../appimagelauncher/appimagelauncher.spec | 9 +- 5 files changed, 197 insertions(+), 4 deletions(-) create mode 100644 anda/lib/libappimageupdate/anda.hcl create mode 100644 anda/lib/libappimageupdate/libappimageupdate.spec create mode 100644 anda/lib/nlohmann-json/anda.hcl create mode 100644 anda/lib/nlohmann-json/nlohmann-json.spec diff --git a/anda/lib/libappimageupdate/anda.hcl b/anda/lib/libappimageupdate/anda.hcl new file mode 100644 index 0000000000..67922c484f --- /dev/null +++ b/anda/lib/libappimageupdate/anda.hcl @@ -0,0 +1,5 @@ +project "pkg" { + rpm { + spec = "libappimageupdate.spec" + } +} diff --git a/anda/lib/libappimageupdate/libappimageupdate.spec b/anda/lib/libappimageupdate/libappimageupdate.spec new file mode 100644 index 0000000000..9040259010 --- /dev/null +++ b/anda/lib/libappimageupdate/libappimageupdate.spec @@ -0,0 +1,80 @@ +%global git_commit af298b7aebfab4bcee7490a86f0471cc22db248b + +%global commit_short %(c=%{git_commit}; echo ${c:0:7}) + +%global libver 2.0.0-alpha-1-20220124.git%{commit_short} + +# replace - with ~ +%global libver_format %(v=%{libver}; sed 's/-/~/g' <<< $v) + +Name: libappimageupdate + +Version: %{libver_format} +Release: 1%{?dist} +Summary: AppImageUpdate lets you update AppImages in a decentral way using information embedded in the AppImage itself. + +License: MIT +URL: https://github.com/AppImageCommunity/AppImageUpdate +#Source0: %{url}/archive/refs/%{libver}.tar.gz +Source0: %{url}/archive/%{git_commit}.tar.gz + +BuildRequires: make +BuildRequires: cmake3 +BuildRequires: gcc-c++ +BuildRequires: libappimage-devel curl-devel libX11-devel zlib-devel fuse-devel librsvg2-devel cairo-devel git-core +BuildRequires: nlohmann-json-devel + +%description +Implements functionality for dealing with AppImage files. It is written in C++ and is using Boost. + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + + +%prep +%autosetup -n AppImageUpdate-%{git_commit} + +git init . +git remote add origin %{url} +git fetch origin +git checkout %{git_commit} --force +git pull origin %{git_commit} --force +git submodule update --init --recursive + +%build +# add include path for argagg +%cmake -DBUILD_QT_UI=OFF \ + -DBUILD_LIBAPPIMAGEUPDATE_ONLY=ON \ + -DUSE_SYSTEM_LIBAPPIMAGE=ON +%cmake_build + + +%install +%cmake_install + +%{?ldconfig_scriptlets} + + +%files +%{_libdir}/*.so +%{_libdir}/*.a +# what is this? +%exclude %{_bindir}/validate + +%files devel +%{_includedir}/* +%{_prefix}/lib/cmake/AppImageUpdate/ + + + + + + +%changelog +* Tue Oct 25 2022 Cappy Ishihara +- diff --git a/anda/lib/nlohmann-json/anda.hcl b/anda/lib/nlohmann-json/anda.hcl new file mode 100644 index 0000000000..5c5d0743c0 --- /dev/null +++ b/anda/lib/nlohmann-json/anda.hcl @@ -0,0 +1,5 @@ +project "pkg" { + rpm { + spec = "nlohmann-json.spec" + } +} diff --git a/anda/lib/nlohmann-json/nlohmann-json.spec b/anda/lib/nlohmann-json/nlohmann-json.spec new file mode 100644 index 0000000000..56b4e9363b --- /dev/null +++ b/anda/lib/nlohmann-json/nlohmann-json.spec @@ -0,0 +1,102 @@ +%global debug_package %{nil} + +Name: nlohmann-json +Version: 3.11.2 +Release: 1%{?dist} + +Summary: JSON for Modern C++ (c++11) ("single header file") + + +%define desc %{expand:There are myriads of JSON libraries out there, and each may even have its reason to exist. +Our class had these design goals: +- intuitive syntax. +- Trivial integration. +- Serious testing +} + +License: MIT +Url: https://github.com/nlohmann/json + +Source: https://github.com/nlohmann/json/archive/refs/tags/v%{version}.tar.gz + +BuildRequires: cmake gcc-c++ + +%description +%{desc} + +%package devel +Summary: JSON for Modern C++ (c++11) ("single header file") +Group: Development/C++ + +%description devel +%{desc} + +This package contains the single header C++ file and CMake dependency files. + +%prep +%autosetup -n json-%{version} + +%build +%cmake + + +%install +%cmake_install + +%files devel +%{_includedir}/nlohmann +%{_datadir}/cmake/nlohmann_json/ +%{_datadir}/pkgconfig/nlohmann_json.pc + +%changelog +* Mon Dec 26 2022 Cappy Ishihara - 3.11.2-1.um37 +- Rebuild for Terra, dependency of libappimageupdate + +* Fri Dec 10 2021 Ilya Kurdyukov 3.10.4-alt1.1 +- Fixed build for Elbrus. + +* Mon Nov 15 2021 Paul Wolneykien 3.10.4-alt1 +- new version 3.10.4 + +* Thu Sep 16 2021 Ivan A. Melnikov 3.10.2-alt2 +- Disable slower tests on %%mips and riscv64 to avoid timeouts. + +* Tue Sep 14 2021 Paul Wolneykien 3.10.2-alt1 +- Updated to v3.10.2. + +* Wed Apr 28 2021 Arseny Maslennikov 3.8.0-alt3.1 +- NMU: spec: adapted to new cmake macros. + +* Thu Sep 10 2020 Ivan A. Melnikov 3.8.0-alt3 +- Skip test-unicode on mips*, as it timeouts. + +* Fri Jul 03 2020 Paul Wolneykien 3.8.0-alt2 +- Added the test data bundle. +- Fix: Run the tests with CMake. +- Skip the cmake_fetch_content test. + +* Thu Jul 02 2020 Paul Wolneykien 3.8.0-alt1 +- Freshed up to v3.8.0. + +* Tue Mar 31 2020 Paul Wolneykien 3.7.2-alt2 +- Run the auto-tests. +- Package CMake dependency files. +- This is now an arch package'nlohmann-json' providing nlohmann-json-devel + and replacing json-cpp. +- Fixed project lincense: MIT. + +* Tue Mar 31 2020 Paul Wolneykien 3.7.2-alt1 +- Upstream version 3.7.2. +- Also install %_includedir/nlohmann/json.hpp symlink. + +* Mon Nov 26 2018 Pavel Vainerman 3.4.0-alt1 +- new version + +* Sun Mar 19 2017 Pavel Vainerman 2.1.1-alt1 +- new version + +* Tue Nov 08 2016 Pavel Vainerman 2.0.7-alt1 +- new version + +* Sun Oct 30 2016 Pavel Vainerman 2.0.6-alt0.1 +- initial commit \ No newline at end of file diff --git a/anda/tools/appimagelauncher/appimagelauncher.spec b/anda/tools/appimagelauncher/appimagelauncher.spec index 3f7021c7c8..199eacf5de 100644 --- a/anda/tools/appimagelauncher/appimagelauncher.spec +++ b/anda/tools/appimagelauncher/appimagelauncher.spec @@ -1,12 +1,9 @@ %global git_commit 0f918015fa418affec32435d1c61c6ae473f2af5 %global git_shortcommit %(c=%{git_commit}; echo ${c:0:7}) -# exclude libappimageupdate* from provides -%global __requires_exclude ^libappimageupdate.*$ - Name: appimagelauncher Version: 2.2.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Helper application for Linux distributions serving as a kind of "entry point" for running and integrating AppImages License: MIT @@ -27,6 +24,7 @@ BuildRequires: qt5-linguist BuildRequires: libcurl-devel BuildRequires: boost-devel BuildRequires: libappimage-devel +BuildRequires: libappimageupdate-devel BuildRequires: systemd-rpm-macros BuildRequires: librsvg2-devel @@ -75,5 +73,8 @@ popd %{_mandir}/man1/AppImageLauncher.1.gz %changelog +* Mon Dec 26 2022 Cappy Ishihara +- Bumped release, added missing dependency + * Tue Oct 25 2022 Cappy Ishihara - Initial Release From 636b5f8a7dcb190a8cc3dbf15294abb6284534ad Mon Sep 17 00:00:00 2001 From: Cappy Ishihara Date: Mon, 26 Dec 2022 18:41:24 +0700 Subject: [PATCH 3/7] added transaction scripts --- .../appimagelauncher/appimagelauncher.spec | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/anda/tools/appimagelauncher/appimagelauncher.spec b/anda/tools/appimagelauncher/appimagelauncher.spec index 199eacf5de..21ebfa5626 100644 --- a/anda/tools/appimagelauncher/appimagelauncher.spec +++ b/anda/tools/appimagelauncher/appimagelauncher.spec @@ -57,6 +57,38 @@ popd %cmake_install +%post +echo "Installing AppImageLauncher as interpreter for AppImages" +# as there's no _real_ package that we could use as a dependency to take care of the kernel module, +# we need to make sure that the kernel module is loaded manually +modprobe -v binfmt_misc + +(set -x; systemctl restart systemd-binfmt) + + +%postun + +echo "Removing AppImageLauncher as interpreter for AppImages" +(set -x; systemctl restart systemd-binfmt) + +update_notifier="/usr/share/update-notifier/notify-reboot-required" +if [ -x "$update_notifier" ]; then + "$update_notifier" +fi + +cat < Date: Mon, 26 Dec 2022 18:50:08 +0700 Subject: [PATCH 4/7] removed funny newlines --- anda/lib/libappimageupdate/libappimageupdate.spec | 5 ----- 1 file changed, 5 deletions(-) diff --git a/anda/lib/libappimageupdate/libappimageupdate.spec b/anda/lib/libappimageupdate/libappimageupdate.spec index 9040259010..a23bd2c7bc 100644 --- a/anda/lib/libappimageupdate/libappimageupdate.spec +++ b/anda/lib/libappimageupdate/libappimageupdate.spec @@ -70,11 +70,6 @@ git submodule update --init --recursive %{_includedir}/* %{_prefix}/lib/cmake/AppImageUpdate/ - - - - - %changelog * Tue Oct 25 2022 Cappy Ishihara - From f40e973dafd91f4152d799fb8a46bcaf55b3bec8 Mon Sep 17 00:00:00 2001 From: Cappy Ishihara Date: Mon, 26 Dec 2022 18:51:48 +0700 Subject: [PATCH 5/7] add changelog text --- anda/lib/libappimageupdate/libappimageupdate.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/anda/lib/libappimageupdate/libappimageupdate.spec b/anda/lib/libappimageupdate/libappimageupdate.spec index a23bd2c7bc..7d7a8935e1 100644 --- a/anda/lib/libappimageupdate/libappimageupdate.spec +++ b/anda/lib/libappimageupdate/libappimageupdate.spec @@ -72,4 +72,4 @@ git submodule update --init --recursive %changelog * Tue Oct 25 2022 Cappy Ishihara -- +- Initial build From e949e8f89db22f81f1e6ed7597ab0101a303b9bd Mon Sep 17 00:00:00 2001 From: Cappy Ishihara Date: Mon, 26 Dec 2022 18:56:19 +0700 Subject: [PATCH 6/7] add Qt libs --- anda/lib/libappimageupdate/libappimageupdate.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/anda/lib/libappimageupdate/libappimageupdate.spec b/anda/lib/libappimageupdate/libappimageupdate.spec index 7d7a8935e1..a9d6bfeaf4 100644 --- a/anda/lib/libappimageupdate/libappimageupdate.spec +++ b/anda/lib/libappimageupdate/libappimageupdate.spec @@ -48,7 +48,7 @@ git submodule update --init --recursive %build # add include path for argagg -%cmake -DBUILD_QT_UI=OFF \ +%cmake -DBUILD_QT_UI=ON \ -DBUILD_LIBAPPIMAGEUPDATE_ONLY=ON \ -DUSE_SYSTEM_LIBAPPIMAGE=ON %cmake_build From 870c25eec84d4bc2e15c3fbd976c4d51daddf621 Mon Sep 17 00:00:00 2001 From: Cappy Ishihara Date: Mon, 26 Dec 2022 19:13:56 +0700 Subject: [PATCH 7/7] add argagg, fix libappimageupdate --- anda/lib/argagg/anda.hcl | 5 + anda/lib/argagg/argagg.spec | 106 ++++++++++++++++++ .../libappimageupdate/libappimageupdate.spec | 6 + 3 files changed, 117 insertions(+) create mode 100644 anda/lib/argagg/anda.hcl create mode 100644 anda/lib/argagg/argagg.spec diff --git a/anda/lib/argagg/anda.hcl b/anda/lib/argagg/anda.hcl new file mode 100644 index 0000000000..f93ef329e5 --- /dev/null +++ b/anda/lib/argagg/anda.hcl @@ -0,0 +1,5 @@ +project "pkg" { + rpm { + spec = "argagg.spec" + } +} diff --git a/anda/lib/argagg/argagg.spec b/anda/lib/argagg/argagg.spec new file mode 100644 index 0000000000..af9309a37e --- /dev/null +++ b/anda/lib/argagg/argagg.spec @@ -0,0 +1,106 @@ +%global debug_package %{nil} + +Name: argagg +Version: 0.4.6 +Release: 1%{?dist} +Summary: Simple C++ command line argument/option parser + +License: MIT +URL: https://github.com/vietjtnguyen/argagg/ +Source0: https://github.com/vietjtnguyen/argagg/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz + +BuildRequires: cmake +BuildRequires: doxygen + +%description +This is yet another C++ command line argument/option parser. It was written as +a simple and idiomatic alternative to other frameworks like getopt, Boost +program options, TCLAP, and others. The goal is to achieve the majority of +argument parsing needs in a simple manner with an easy to use API. It operates +as a single pass over all arguments, recognizing flags prefixed by - (short) or +-- (long) and aggregating them into easy to access structures with lots of +convenience functions. It defers processing types until you access them, so the +result structures end up just being pointers into the original command line +argument C-strings. argagg supports POSIX recommended argument syntax +conventions. + +%package devel +Summary: Development files for %{name} + +%description devel +The %{name}-devel package contains the header files for developing applications +that use %{name}. + +%package doc +Summary: Developer documentation for %{name} + +%description doc +The %{name}-doc package contains the documentation for developing applications +that use %{name}. + +%prep +%setup -q + +%build +# ignore doctest warnings +%cmake -DOXYGEN=ON +# enter cmake build directory +pushd redhat-linux-build +mkdir share +popd +%cmake_build -t docs + + +%install +%cmake_install + +ls -la redhat-linux-build/share + +%files + +%files devel +%{_includedir}/* + +%files doc +%doc %{_datadir}/doc/%{name} + +%changelog +* Fri May 26 2017 Viet The Nguyen +- Updated version to 0.4.6 + +* Fri Apr 28 2017 Viet The Nguyen +- Updated version to 0.4.5 + +* Tue Apr 25 2017 Viet The Nguyen +- Updated version to 0.4.4 + +* Tue Apr 25 2017 Viet The Nguyen +- Updated version to 0.4.3 + +* Tue Apr 25 2017 Viet The Nguyen +- Updated version to 0.4.2 + +* Sun Mar 05 2017 Viet The Nguyen +- Updated description +- Remove dependence on empty root package + +* Sun Feb 19 2017 Viet The Nguyen +- Disabled creation of debuginfo package + +* Mon Feb 13 2017 Viet The Nguyen +- Fixed License field and doc subpackage description typo + +* Sat Feb 11 2017 Viet The Nguyen +- Updated version to 0.2.2 + +* Fri Feb 10 2017 Viet The Nguyen +- Separated documentation into a separate package + +* Fri Feb 10 2017 Viet The Nguyen +- Packaged version 0.2.1 + +* Mon Jan 30 2017 Viet The Nguyen +- Added missing files specification for empty parent package + +* Sun Jan 29 2017 Viet The Nguyen +- Initial packaging diff --git a/anda/lib/libappimageupdate/libappimageupdate.spec b/anda/lib/libappimageupdate/libappimageupdate.spec index a9d6bfeaf4..a7d8743f48 100644 --- a/anda/lib/libappimageupdate/libappimageupdate.spec +++ b/anda/lib/libappimageupdate/libappimageupdate.spec @@ -23,6 +23,12 @@ BuildRequires: cmake3 BuildRequires: gcc-c++ BuildRequires: libappimage-devel curl-devel libX11-devel zlib-devel fuse-devel librsvg2-devel cairo-devel git-core BuildRequires: nlohmann-json-devel +BuildRequires: pkgconfig(libgcrypt) +BuildRequires: pkgconfig(gpgme) +BuildRequires: pkgconfig(Qt5) +BuildRequires: openssl-devel +BuildRequires: inotify-tools-devel +BuildRequires: argagg-devel %description Implements functionality for dealing with AppImage files. It is written in C++ and is using Boost.