From a9192809bffccf842fc2ef37ad67d5121c0a4ad9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davi=20Ant=C3=B4nio=20da=20Silva=20Santos?= Date: Wed, 1 Mar 2023 11:00:31 -0300 Subject: Move project to the new debhelper dependency The debian/compat file is not recommended to configure debhelper as a build dependency. Therefore, the aformenetioned package has been deleted and replaced with the debhelper-compat (= 13) dependency stated in the debian/control file. The recommended debhelper level for Ubuntu Jammy (22.04 LTS) is 13. This required a version bump from the older level, 10. For more information, please check: * https://nthykier.wordpress.com/2019/01/04/debhelper-compat-12-is-now-released/ * https://manpages.ubuntu.com/manpages/jammy/en/man7/debhelper.7.html --- debian/control | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'debian/control') diff --git a/debian/control b/debian/control index 62135f4..20c7828 100644 --- a/debian/control +++ b/debian/control @@ -3,7 +3,7 @@ Section: misc Priority: optional Maintainer: BOCA Development Team Uploaders: Cassio Polpo de Campos , Bruno Cesar Ribas -Build-Depends: debhelper, build-essential +Build-Depends: debhelper-compat (= 13), build-essential Package: boca Architecture: all -- cgit v1.2.3 From 290dc700f73725caae6287c63df515af3c3d7b1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davi=20Ant=C3=B4nio=20da=20Silva=20Santos?= Date: Wed, 1 Mar 2023 12:59:47 -0300 Subject: Drop build dependency on build-essential The build dependency on build-essential was unnecessary, as this dependency is presumed for building debian packages and is already included on buildd machines. --- debian/control | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'debian/control') diff --git a/debian/control b/debian/control index 20c7828..1a693e7 100644 --- a/debian/control +++ b/debian/control @@ -3,7 +3,7 @@ Section: misc Priority: optional Maintainer: BOCA Development Team Uploaders: Cassio Polpo de Campos , Bruno Cesar Ribas -Build-Depends: debhelper-compat (= 13), build-essential +Build-Depends: debhelper-compat (= 13) Package: boca Architecture: all -- cgit v1.2.3 From c7ae39681753497b8c1ab1b99685a89c89caad03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davi=20Ant=C3=B4nio=20da=20Silva=20Santos?= Date: Wed, 1 Mar 2023 19:15:30 -0300 Subject: Fix descriptions' syntax The debian/control file had problems with the syntax of the descriptions: they had extra spaces, leading to parse errors. --- debian/control | 59 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 29 insertions(+), 30 deletions(-) (limited to 'debian/control') diff --git a/debian/control b/debian/control index 1a693e7..8961ccc 100644 --- a/debian/control +++ b/debian/control @@ -10,60 +10,59 @@ Architecture: all Depends: boca-common, boca-web, boca-db, boca-autojudge Provides: maratona-boca Description: BOCA is a software created to control a contest with the ACM ICPC rules. - BOCA is a software created to control a contest with the ACM International - Collegiate Programming Contest rules. It has been developed in PHP and the - interaction between judges and the system is done through a web browser. - . - This package install all boca related packages to run everything in one - single machine. + BOCA is a software created to control a contest with the ACM International + Collegiate Programming Contest rules. It has been developed in PHP and the + interaction between judges and the system is done through a web browser. + . + This package install all boca related packages to run everything in one + single machine. Package: boca-db Architecture: all Pre-depends: postgresql Depends: boca-common Description: BOCA - database - BOCA is a software created to control a contest with the ACM International - Collegiate Programming Contest rules. It has been developed in PHP and the - interaction between judges and the system is done through a web browser. - . - This package provides a full database to run a contest on. + BOCA is a software created to control a contest with the ACM International + Collegiate Programming Contest rules. It has been developed in PHP and the + interaction between judges and the system is done through a web browser. + . + This package provides a full database to run a contest on. Package: boca-web Architecture: all Depends: boca-common, apache2, php-fpm, php Description: BOCA - WEB files - BOCA is a software created to control a contest with the ACM International - Collegiate Programming Contest rules. It has been developed in PHP and the - interaction between judges and the system is done through a web browser. - . - This package provides only web contents. + BOCA is a software created to control a contest with the ACM International + Collegiate Programming Contest rules. It has been developed in PHP and the + interaction between judges and the system is done through a web browser. + . + This package provides only web contents. Package: boca-common Architecture: all Pre-Depends: debconf, makepasswd, coreutils, sharutils Depends: php-zip, wget, php-cli, php-pgsql, php-gd, postgresql-client, php-xml, openssl, libany-uri-escape-perl Description: BOCA - Common files - BOCA is a software created to control a contest with the ACM International - Collegiate Programming Contest rules. It has been developed in PHP and the - interaction between judges and the system is done through a web browser. - . - This package contains shared files with all BOCA packages. + BOCA is a software created to control a contest with the ACM International + Collegiate Programming Contest rules. It has been developed in PHP and the + interaction between judges and the system is done through a web browser. + . + This package contains shared files with all BOCA packages. Package: boca-autojudge Architecture: amd64 Depends: boca-common, debootstrap, schroot, quotatool, makepasswd Description: BOCA - AutoJudge - BOCA is a software created to control a contest with the ACM International - Collegiate Programming Contest rules. It has been developed in PHP and the - interaction between judges and the system is done through a web browser. - . - This package contains files to generate and run the autojudge system for - BOCA. + BOCA is a software created to control a contest with the ACM International + Collegiate Programming Contest rules. It has been developed in PHP and the + interaction between judges and the system is done through a web browser. + . + This package contains files to generate and run the autojudge system for + BOCA. Package: boca-submission-tools Architecture: amd64 Depends: sharutils, wget, coreutils, libany-uri-escape-perl, openssl, openssh-server, logkeys Description: BOCA submission tools. - This package provides tools to submit codes to a running boca server - without using the web interface. - + This package provides tools to submit codes to a running boca server + without using the web interface. -- cgit v1.2.3 From 48c01087ee39d8a7a03df28e4ce76ab5dcfc2d46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davi=20Ant=C3=B4nio=20da=20Silva=20Santos?= Date: Wed, 1 Mar 2023 21:03:05 -0300 Subject: Use debhelper to find missing dependencies The project already used debhelper, but it did not use the automatic dependency and shared library finder. Adding the expansion varibles `${misc:Depends}` and ${shlibs:Depends}` solves this problem and the error found by lintian's static analysis (missing-dependency-on-libc). --- debian/control | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'debian/control') diff --git a/debian/control b/debian/control index 8961ccc..882ee8e 100644 --- a/debian/control +++ b/debian/control @@ -7,7 +7,7 @@ Build-Depends: debhelper-compat (= 13) Package: boca Architecture: all -Depends: boca-common, boca-web, boca-db, boca-autojudge +Depends: ${misc:Depends}, ${shlibs:Depends}, boca-common, boca-web, boca-db, boca-autojudge Provides: maratona-boca Description: BOCA is a software created to control a contest with the ACM ICPC rules. BOCA is a software created to control a contest with the ACM International @@ -20,7 +20,7 @@ Description: BOCA is a software created to control a contest with the ACM ICPC r Package: boca-db Architecture: all Pre-depends: postgresql -Depends: boca-common +Depends: ${misc:Depends}, ${shlibs:Depends}, boca-common Description: BOCA - database BOCA is a software created to control a contest with the ACM International Collegiate Programming Contest rules. It has been developed in PHP and the @@ -30,7 +30,7 @@ Description: BOCA - database Package: boca-web Architecture: all -Depends: boca-common, apache2, php-fpm, php +Depends: ${misc:Depends}, ${shlibs:Depends}, boca-common, apache2, php-fpm, php Description: BOCA - WEB files BOCA is a software created to control a contest with the ACM International Collegiate Programming Contest rules. It has been developed in PHP and the @@ -41,7 +41,7 @@ Description: BOCA - WEB files Package: boca-common Architecture: all Pre-Depends: debconf, makepasswd, coreutils, sharutils -Depends: php-zip, wget, php-cli, php-pgsql, php-gd, postgresql-client, php-xml, openssl, libany-uri-escape-perl +Depends: ${misc:Depends}, ${shlibs:Depends}, php-zip, wget, php-cli, php-pgsql, php-gd, postgresql-client, php-xml, openssl, libany-uri-escape-perl Description: BOCA - Common files BOCA is a software created to control a contest with the ACM International Collegiate Programming Contest rules. It has been developed in PHP and the @@ -51,7 +51,7 @@ Description: BOCA - Common files Package: boca-autojudge Architecture: amd64 -Depends: boca-common, debootstrap, schroot, quotatool, makepasswd +Depends: ${misc:Depends}, ${shlibs:Depends}, boca-common, debootstrap, schroot, quotatool, makepasswd Description: BOCA - AutoJudge BOCA is a software created to control a contest with the ACM International Collegiate Programming Contest rules. It has been developed in PHP and the @@ -62,7 +62,7 @@ Description: BOCA - AutoJudge Package: boca-submission-tools Architecture: amd64 -Depends: sharutils, wget, coreutils, libany-uri-escape-perl, openssl, openssh-server, logkeys +Depends: ${misc:Depends}, ${shlibs:Depends}, sharutils, wget, coreutils, libany-uri-escape-perl, openssl, openssh-server, logkeys Description: BOCA submission tools. This package provides tools to submit codes to a running boca server without using the web interface. -- cgit v1.2.3 From 5a2eff0685e4e1cd4040365c3a00252cbdbcc4dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davi=20Ant=C3=B4nio=20da=20Silva=20Santos?= Date: Wed, 1 Mar 2023 21:18:54 -0300 Subject: Add required field Standards-Version The Standards-Version is a mandatory field and its absence violates the Debian Policy and generates an error on lintian (required-field). Also check the lintian recommended documentation in case of a package that has been detected by the `required-field` rule/tag: * Debian Policy Manual section 5.3 * Debian Policy Manual section 5.5 * Debian Policy Manual section 5.6.11 --- debian/control | 1 + 1 file changed, 1 insertion(+) (limited to 'debian/control') diff --git a/debian/control b/debian/control index 882ee8e..4473fa9 100644 --- a/debian/control +++ b/debian/control @@ -4,6 +4,7 @@ Priority: optional Maintainer: BOCA Development Team Uploaders: Cassio Polpo de Campos , Bruno Cesar Ribas Build-Depends: debhelper-compat (= 13) +Standards-Version: 4.6.0.1 Package: boca Architecture: all -- cgit v1.2.3 From 824e363a161275dca4fa845c5157e214ec5450eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davi=20Ant=C3=B4nio=20da=20Silva=20Santos?= Date: Wed, 1 Mar 2023 21:27:36 -0300 Subject: Drop unversioned dependencies on essential package Debian Policy Manual section 3 states that a package is strongly advised against depending on essential packages without except when explicitly declaring a version constraint. Essential packages are defined as "the minimal set of functionality that must be available and usable on the system at all times" according to the Debian Policy Manual section 3.8. Given the reasons mentioned above, the dependencies on coreutils, an essential package, have been removed from boca-common and boca-submission-tools. This has also cleared the project from the Lintian error `depends-on-essential-package-without-using-version`. --- debian/control | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'debian/control') diff --git a/debian/control b/debian/control index 4473fa9..d8024df 100644 --- a/debian/control +++ b/debian/control @@ -41,7 +41,7 @@ Description: BOCA - WEB files Package: boca-common Architecture: all -Pre-Depends: debconf, makepasswd, coreutils, sharutils +Pre-Depends: debconf, makepasswd, sharutils Depends: ${misc:Depends}, ${shlibs:Depends}, php-zip, wget, php-cli, php-pgsql, php-gd, postgresql-client, php-xml, openssl, libany-uri-escape-perl Description: BOCA - Common files BOCA is a software created to control a contest with the ACM International @@ -63,7 +63,7 @@ Description: BOCA - AutoJudge Package: boca-submission-tools Architecture: amd64 -Depends: ${misc:Depends}, ${shlibs:Depends}, sharutils, wget, coreutils, libany-uri-escape-perl, openssl, openssh-server, logkeys +Depends: ${misc:Depends}, ${shlibs:Depends}, sharutils, wget, libany-uri-escape-perl, openssl, openssh-server, logkeys Description: BOCA submission tools. This package provides tools to submit codes to a running boca server without using the web interface. -- cgit v1.2.3 From cbe0038d2a7eaa08ad8acac4f21da1a72d1acda9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davi=20Ant=C3=B4nio=20da=20Silva=20Santos?= Date: Wed, 1 Mar 2023 23:18:02 -0300 Subject: Fix packages' short and long descriptions The packages' long and short descriptions have been rewritten to address the following errors, warnings and information found by Lintian: * boca-autojudge: description-is-pkg-name BOCA - AutoJudge * boca: description-starts-with-package-name * boca: empty-binary-package * boca: synopsis-is-a-sentence "BOCA is a software created to control a contest with the ACM ICPC rules.". --- debian/control | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'debian/control') diff --git a/debian/control b/debian/control index d8024df..3c8ae00 100644 --- a/debian/control +++ b/debian/control @@ -10,12 +10,12 @@ Package: boca Architecture: all Depends: ${misc:Depends}, ${shlibs:Depends}, boca-common, boca-web, boca-db, boca-autojudge Provides: maratona-boca -Description: BOCA is a software created to control a contest with the ACM ICPC rules. +Description: manage a contest with the ACM ICPC rules BOCA is a software created to control a contest with the ACM International Collegiate Programming Contest rules. It has been developed in PHP and the interaction between judges and the system is done through a web browser. . - This package install all boca related packages to run everything in one + This metapackage install all boca related packages to run everything in a single machine. Package: boca-db @@ -53,7 +53,7 @@ Description: BOCA - Common files Package: boca-autojudge Architecture: amd64 Depends: ${misc:Depends}, ${shlibs:Depends}, boca-common, debootstrap, schroot, quotatool, makepasswd -Description: BOCA - AutoJudge +Description: automatic judge system for BOCA BOCA is a software created to control a contest with the ACM International Collegiate Programming Contest rules. It has been developed in PHP and the interaction between judges and the system is done through a web browser. @@ -64,6 +64,6 @@ Description: BOCA - AutoJudge Package: boca-submission-tools Architecture: amd64 Depends: ${misc:Depends}, ${shlibs:Depends}, sharutils, wget, libany-uri-escape-perl, openssl, openssh-server, logkeys -Description: BOCA submission tools. +Description: BOCA tools for headless code submission This package provides tools to submit codes to a running boca server without using the web interface. -- cgit v1.2.3 From edee1c1af975e885903d2207f657c36275c2e220 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davi=20Ant=C3=B4nio=20da=20Silva=20Santos?= Date: Thu, 2 Mar 2023 15:42:50 -0300 Subject: Migrate dependencies and maintainer scripts to PHP 8.1 The dependencies on PHP packages have been explicitly set to use PHP version 8.1. The boca-web post installation maintainer script has been updated with extra descriptions and a the required steps to migrate from PHP 7.4. --- debian/control | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'debian/control') diff --git a/debian/control b/debian/control index 3c8ae00..c7af64c 100644 --- a/debian/control +++ b/debian/control @@ -31,7 +31,7 @@ Description: BOCA - database Package: boca-web Architecture: all -Depends: ${misc:Depends}, ${shlibs:Depends}, boca-common, apache2, php-fpm, php +Depends: ${misc:Depends}, ${shlibs:Depends}, boca-common, apache2, php8.1-fpm, php8.1 Description: BOCA - WEB files BOCA is a software created to control a contest with the ACM International Collegiate Programming Contest rules. It has been developed in PHP and the @@ -42,7 +42,7 @@ Description: BOCA - WEB files Package: boca-common Architecture: all Pre-Depends: debconf, makepasswd, sharutils -Depends: ${misc:Depends}, ${shlibs:Depends}, php-zip, wget, php-cli, php-pgsql, php-gd, postgresql-client, php-xml, openssl, libany-uri-escape-perl +Depends: ${misc:Depends}, ${shlibs:Depends}, php8.1-zip, wget, php8.1-cli, php8.1-pgsql, php8.1-gd, postgresql-client, php8.1-xml, openssl, libany-uri-escape-perl Description: BOCA - Common files BOCA is a software created to control a contest with the ACM International Collegiate Programming Contest rules. It has been developed in PHP and the -- cgit v1.2.3 From 55dbd0e43d4744aa5e1eb4f4f7c8a9cbc68df581 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Davi=20Ant=C3=B4nio=20da=20Silva=20Santos?= Date: Fri, 3 Mar 2023 11:36:20 -0300 Subject: Conflict with mod_php instead of disabling it The boca-web package will not try to disable Apache's php8.1 module (mod_php for PHP 8.1) anymore. It will conflict with the package that provides the offending module for the distribution's current PHP version, libapache2-mod-php. --- debian/control | 1 + 1 file changed, 1 insertion(+) (limited to 'debian/control') diff --git a/debian/control b/debian/control index c7af64c..7ea2089 100644 --- a/debian/control +++ b/debian/control @@ -32,6 +32,7 @@ Description: BOCA - database Package: boca-web Architecture: all Depends: ${misc:Depends}, ${shlibs:Depends}, boca-common, apache2, php8.1-fpm, php8.1 +Conflicts: libapache2-mod-php Description: BOCA - WEB files BOCA is a software created to control a contest with the ACM International Collegiate Programming Contest rules. It has been developed in PHP and the -- cgit v1.2.3