clfreville2 c5c195261e cli: Évite un éventuel buffer overflow
unzGetCurrentFileInfo ne dépassait pas la taille du buffer qui lui
était allouée, mais ne pouvait pas, lorsque le nom de fichier est plus
long que la taille du tampon, écrire la fin de la chaîne de
caractères (\0).
2022-11-30 14:38:53 +01:00
2022-11-22 11:09:43 +01:00

 ██████╗ ██╗  ██╗██╗
██╔═══██╗██║ ██╔╝██║
██║   ██║█████╔╝ ██║
██║   ██║██╔═██╗ ██║
╚██████╔╝██║  ██╗██║
 ╚═════╝ ╚═╝  ╚═╝╚═╝

Open pacKage Installer

Prerequisites

Database

A PostgreSQL server is recommended in production. For development purposes, you may instead want to use an SQLite database. On Debian: apt install postgresql / apt install sqlite3

Web

The backend is written in PHP >= 7.4. Depending on the database you have chosen, the appropriate PDO extensions are also required. On Debian (versions may vary): apt install php7.4-cli php7.4-pgsql php7.4-sqlite3

Command Line Interface

A C++ 20 compiler like GCC is needed, with the nlohmann/json, curl and minizip libraries. Unit tests are using doctest. On Debian: apt install build-essential nlohmann-json3-dev libcurl4-openssl-dev libminizip-dev doctest-dev

Some commands also use some clang tools like clang-format and gcovr. On Debian: apt install clang-format gcovr

Quick setup

Create a sample database and run the server

cd sql && ./create_sqlite_db.sh && cd ..
php -S localhost:8000 -t web/public

Compile the cli

At home

cd cli && make

At the IUT

cd cli && ./make-in-vdn.sh && unset http_proxy
Description
A package manager for C and C++ applications
Readme 1.4 MiB
Languages
C++ 67.4%
PHP 25.9%
CSS 2.1%
Shell 2%
Makefile 1.4%
Other 1.1%