* extras/packaging/gnu-linux/Makefile (GUIX_PACK_FORMATS): New
variable.
(guix-pack-command): Add format argument. Make the --postinst-file
argument conditional to the 'deb' format.
(define-deb-pack-rule): Rename to...
(define-guix-pack-rule): ... this. Add a new format argument, and
move existing architecture argument into 2nd position.
* extras/packaging/gnu-linux/scripts/deploy-packages.sh
(package): Register 'guix-rpm-pack' as RPM packages.
Change-Id: I1b5501c02e917b2b0c5e92e775a85478dd67316e
Build them by default again.
* extras/packaging/gnu-linux/Jenkinsfile [BUILD_DEB_PACK]: Remove parameter.
('Build packages'): Do not filter out deb packs by default.
Change-Id: Id65c00de0a50c263b672986a61776b02cf69a2e4
The with-libjami/latest rewriting procedure was not applied to the
customized jami package, hence it was using libjami at its current
version in GNU Guix and failing to build.
* extras/packaging/gnu-linux/guix/guix-pack-manifest.scm
(with-latest-sources): Apply patch.
(libjami/latest): Disable test suite.
(jami-with-certs): Re-introduce -DLIBJAMI_INCLUDE_DIR configure flag.
(jami-with-certs/latest): Apply to with-libjami/latest.
Change-Id: I6266fa691dc8995300afb15bdbc9ce1640ab4d1d
Instead of leaking host TLS certificates at /etc/ssl/certs for GnuTLS,
we can now have the directory symlinked to the ones provided by the
nss-certs package in the Guix container, which is cleaner.
* extras/packaging/gnu-linux/Makefile
(portable-release-tarball): Replace --expose options with --symlink.
* build.py (run_install): Likewise.
Change-Id: Id3b8c2b3dd06fade10bbd280fd0af8f9ac8fde45
* extras/packaging/gnu-linux/scripts/release-version.sh: Add script
for deriving (reproducibly) a release version. The format will follow
a 'YYYYMMDD.X' scheme, where 'YYYYMMDD' is the date of the last commit
on the current branch, and 'X' the number of releases tagged that day,
starting from zero. Example: the first stable release with a newest
commit date of 2023-01-02 would have a version of '20230102.0', the
subsequent one '20230102.1', and so on. This is derived by counting
the number of git tags with the prefix 'TYPE/YYYYMMDD', where 'TYPE'
is the release type: either 'stable', 'beta', or 'nightly'.
* extras/packaging/gnu-linux/Jenkinsfile: Call the above new script to
derive the release version to use for tagging.
* extras/packaging/gnu-linux/Makefile: Switch from the previous
'jami_YYYYMMDD.hhmm.COMMIT.tar.gz' tarball filename format to
'jami-YYYYMMDD.X.tar.gz'. The new format is shorter, omits the
unnecessary and confusing commit id, and uses dash instead of
underscore. Also, it contains everything in a top-level directory
with the same name as the tarball (without the .tar.gz extensions),
so that 'jami-YYYYMMDD.X.tar.gz' nicely extracts to 'jami-YYYYMMDD.X'.
With these changes, our release tarballs will follow more closely the
related instructions from the GNU maintainers manual:
https://www.gnu.org/prep/maintain/html_node/Distribution-tar-Files.html
Lastly, this change inadvertently 'fixes' a recent issue where the
'extras/ci/client-qt-gnulinux' subdirectory and its contents would be
moved to top-level in the tarball due to one of the tarball transforms
matching the 'client-qt' in the directory's name, replacing the
'extras/ci/client-qt' prefix with 'client-qt', thereby resulting in
'client-qt-gnulinux' being moved to the tarball's top-level.
* .gitignore: Ignore several packaging-related directories and files.
* extras/packaging/gnu-linux/rules/rpm/jami-daemon.spec:
* extras/packaging/gnu-linux/rules/rpm/jami-libclient.spec:
* extras/packaging/gnu-linux/rules/rpm/jami-qt.spec:
* extras/packaging/gnu-linux/rules/rpm/jami.spec: Update the expected
release tarball filename pattern in the 'Source' field. Also replace
references to previous top-level directory name 'client-qt' with the
new one 'jami-%{version}' where needed.
* extras/packaging/gnu-linux/rules/rpm/jami-libqt.spec: Update the
'Source' field to follow new tarball name consistent with the main
Jami release tarball.
* extras/packaging/gnu-linux/scripts/build-package-rpm.sh: Update the
tarball top-level directory pattern for the new format, now passing
the --wildcards option to GNU Tar. Also use a name for the jami-libqt
source tarball that is more consistent with the main Jami release
tarball.
* extras/packaging/gnu-linux/scripts/build-package-snap.sh: Update the
top-level directory pattern for the new format.
* extras/packaging/gnu-linux/tarballs.manifest: Drop file accidentally
checked into git.
Change-Id: I2695f560c0bc5e61fb99dc0244f8fbb8e7026a62
Because docker mount extras/packaging/gnu-linux/packages:/opt/output
the Makefile MUST creates the directory for current user else
the resulting directory will use the Docker user (root), causing
the file to not be removed.
Change-Id: I91dadfa766730d163de4cf091bb1b9b8193f7d24
This patch moves already existing packaging scripts from jami-project
into client-qt.
Introduced changes are:
+ WITH_SUBMODULE must search in system lib too because for
packaging client-qt (for rpm) will be built separately, and will
depend on jami-daemon.
+ Fix appdata.xml (replace old wiki with docs.jami.net)
+ path changes (because we build in client-qt not jami-project).
GitLab: #853
Change-Id: I1313830d85c8094fcbcc52e22033a2add7b1e89f
This is the first in a series for cleaning up the top directory (root)
of the repository and move various files/folders into nicely organized
directory structures.
GitLab: #749
Change-Id: If59b74fff981df242bc26e62a070bdb81d7baded