diff --git a/.gitignore b/.gitignore index e69de29..6102b05 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,2 @@ +/0install-*.tbz +/0install-*.tbz.sig diff --git a/0install.spec b/0install.spec new file mode 100644 index 0000000..f0f7838 --- /dev/null +++ b/0install.spec @@ -0,0 +1,85 @@ +# PACKAGING NOTE: We do not currently build either the command-line tool or the +# GUI interface. They depend on obus (https://github.com/ocaml-community/obus) +# which cannot be built for the version of OCaml currently in Fedora. For now +# we only build the solver, which is the only part needed by opam anyway. + +%global giturl https://github.com/0install/0install + +Name: 0install +Version: 2.18 +Release: %autorelease +Summary: Decentralized cross-distribution software installation system + +# LGPL-2.1-or-later: the project as a whole +# CC0-1.0: share/metainfo/0install.appdata.xml +# LicenseRef-Fedora-Public-Domain: src/sample_client.py +License: LGPL-2.1-or-later +SourceLicense: %{license} AND CC0-1.0 AND LicenseRef-Fedora-Public-Domain +URL: https://0install.net/ +VCS: git:%{giturl}.git +Source0: %{giturl}/releases/download/v%{version}/%{name}-%{version}.tbz +Source1: %{giturl}/releases/download/v%{version}/%{name}-%{version}.tbz.sig +# Key for Thomas Leonard +Source2: 5DD58D70899C454A966D6A5175133C8F94F6E0CC.gpg + +# OCaml packages not built on i686 since OCaml 5 / Fedora 39. +ExcludeArch: %{ix86} + +BuildRequires: gnupg2 +BuildRequires: ocaml >= 4.08 +BuildRequires: ocaml-dune >= 2.5 +BuildRequires: ocaml-ounit2-devel + +%global _desc %{expand:Zero Install is a decentralized cross-distribution software installation +system. Other features include full support for shared libraries (with a SAT +solver for dependency resolution), sharing between users, and integration with +native platform package managers. It supports both binary and source +packages, and works on Linux, macOS, Unix and Windows systems.} + +%description +%_desc + +%package -n ocaml-0install-solver +Summary: Package dependency solver + +%description -n ocaml-0install-solver +%_desc + +This package contains a package dependency resolver based on a SAT solver. +This was originally written for the 0install package manager, but is now +generic and is also used as a solver backend for opam. + +The SAT solver is based on MiniSat (http://minisat.se/Papers.html) and the +application to package management is based on OPIUM (Optimal Package +Install/Uninstall Manager). 0install-solver uses a (novel?) strategy to find +the optimal solution extremely quickly (even for a SAT-based solver). + +%package -n ocaml-0install-solver-devel +Summary: Development files for %{name}-solver +Requires: ocaml-0install-solver%{?_isa} = %{version}-%{release} + +%description -n ocaml-0install-solver-devel +The %{name}-solver-devel package contains libraries and signature files for +developing applications that use %{name}-solver. + +%prep +%{gpgverify} --data=%{SOURCE0} --signature=%{SOURCE1} --keyring=%{SOURCE2} +%autosetup + +%build +%dune_build -p 0install-solver + +%install +%dune_install 0install-solver + +%check +%dune_check -p 0install-solver + +%files -n ocaml-0install-solver -f .ofiles +%doc CHANGES.md README.md +%license COPYING + +%files -n ocaml-0install-solver-devel -f .ofiles-devel + +%changelog +%autochangelog diff --git a/5DD58D70899C454A966D6A5175133C8F94F6E0CC.gpg b/5DD58D70899C454A966D6A5175133C8F94F6E0CC.gpg new file mode 100644 index 0000000..736c830 Binary files /dev/null and b/5DD58D70899C454A966D6A5175133C8F94F6E0CC.gpg differ diff --git a/README.md b/README.md new file mode 100644 index 0000000..d117944 --- /dev/null +++ b/README.md @@ -0,0 +1,6 @@ +[Zero Install](https://0install.net/) is a decentralized cross-distribution +software installation system. Other features include full support for shared +libraries (with a SAT solver for dependency resolution), sharing between +users, and integration with native platform package managers. It supports +both binary and source packages, and works on Linux, macOS, Unix and Windows +systems. diff --git a/changelog b/changelog new file mode 100644 index 0000000..baea8df --- /dev/null +++ b/changelog @@ -0,0 +1,84 @@ +* Wed Jul 24 2019 Fedora Release Engineering - 2.12.1-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jan 31 2019 Fedora Release Engineering - 2.12.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Thu Jul 12 2018 Fedora Release Engineering - 2.12.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Feb 07 2018 Fedora Release Engineering - 2.12.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sun Jan 07 2018 Igor Gnatenko - 2.12.1-4 +- Remove obsolete scriptlets + +* Wed Aug 02 2017 Fedora Release Engineering - 2.12.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 2.12.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed Mar 29 2017 Ding-Yi Chen - 2.12.1-1 +- Drop support for OCaml 4.01 +- Work around buggy GnuPG 2.1.16 +- Update dependencies + +* Fri Feb 10 2017 Fedora Release Engineering - 2.11-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Nov 09 2016 Dan HorĂ¡k - 2.11-3 +- rebuild for s390x codegen bug + +* Mon Nov 07 2016 Richard W.M. Jones - 2.11-2 +- Rebuild for OCaml 4.04.0. +- Add explicit dependency on ocamlbuild. + +* Mon Feb 22 2016 Ding-Yi Chen - 2.11-1 +- Upstream update to 2.11. +- Exclude ppc64le and ppc + +* Wed Feb 03 2016 Fedora Release Engineering - 2.10-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Oct 06 2015 Ding-Yi Chen - 2.10-2 +- Remove Utilities from .desktop file, so it will use Settings as main category. + +* Tue Oct 06 2015 Ding-Yi Chen - 2.10-1 +- Upstream update to 2.10. + +* Thu Oct 01 2015 Ding-Yi Chen - 2.9.1-1 +- Upstream update to 2.9.1. +- Add buildrequires: ocaml-react-devel for EPEL. +- Exclude ppc64 for EPEL, as the build dependency ocaml-findlib-devel is not available on it. + +* Tue Jun 16 2015 Fedora Release Engineering - 2.6.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Fri Aug 15 2014 Fedora Release Engineering - 2.6.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Fri Jun 06 2014 Dennis Gilmore - 2.6.1-4 +- Remove the no longer needed ExclusiveArch line the macro used has been removed + +* Fri Jun 06 2014 Fedora Release Engineering - 2.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sat Feb 15 2014 Michel Salim - 2.6.1-2 +- Spec clean-up +- Fix permission of shared objects so they get properly handled when + generating debuginfo + +* Fri Feb 14 2014 Michel Salim - 2.6.1-1 +- Update to 2.6.1 +- Install to proper libdir depending on the actual architecture +- Fix ExclusiveArch, build requirements and obsoletion +- Fix license tag +- Yank old changelog from zero-install + +* Mon Jan 20 2014 Michel Salim - 2.6-1 +- Update to 2.6 + +* Mon Jan 20 2014 Michel Salim - 2.5.1-1 +- Rename package to 0install +- Update to 2.5.1 diff --git a/sources b/sources index e69de29..fd6463a 100644 --- a/sources +++ b/sources @@ -0,0 +1,2 @@ +SHA512 (0install-2.18.tbz) = 6d4734754951fad9caad5d876a1301e283bdd77a080d6601d57b21c540a30a616b18f664cbd4f86748c90de41cf3ef54f3a883fd75f638abbe3630a0320e4a7f +SHA512 (0install-2.18.tbz.sig) = bb323a22f533daf3c561439f90fe29f42aae11b10c2f10c89ce6f8819e0d26139430167daa612dd6f8eb2854163c8596f5dba202f4c464fada3a686da2677a56