feluca

Created 4 months ago
Maintained by mattia
Fedora's new packages submission and review system
Members 1
Mattia Verga committed 4 months ago

Feluca

Welcome to Feluca, the Fedora's new packages submission and review system.

Feluca is the place where users can submit new packages for inclusion in the main Fedora repositories. The package gets through a series of automated and manually performed (by other packagers) checks before getting approved. Once all checks pass and the new package is approved, Feluca sets up the repository, imports the package in the master branch and triggers the first build.

Feluca is also the place where new packagers who need to be sponsored can easily make contact with sponsors, comment on other users submissions and learn about Fedora packaging best practices.

About its name

The name Feluca is taken from the Italian word 'feluca' (pronounced /feňąluka/), an historical form of hat known in English language as bicorne. It was widely used as an item of uniform by European and American military and naval officers and it's still currently used on special occasions by some corps, for example by Italian Carabinieri with their full dress uniform.

Development

A Vagrantfile is provided in thesources of the whole Feluca project. Instructions for Fedora:

$ sudo dnf install ansible libvirt vagrant-libvirt vagrant-sshfs vagrant-hostmanager $ vagrant up

For a more thorough introduction to Vagrant, see https://fedoraproject.org/wiki/Vagrant.

When the vagrant VM is up and running, connect to it with:

$ vagrant ssh

This will log you into the VM as the user vagrant which has a couple of aliases preconfigured:

$ fbuild:     Build wheels and sdists for Feluca packages.
$ flint:      Run Python style tests.
$ frun:       Run Feluca Flask app in debug mode.
$ fshell:     Run python shell with useful shortcuts for Flask.
$ ftest:      Run pytest.

The first time you run the development VM you'll need to run fsetup to set up the database.

The default Vagrantfile forwards ports from the host to the guest, so you can interact with the application as if it were running on your host machine.