Group: Software/research/ExternalRepositories

From LibrePlanet
Jump to: navigation, search
(Programming languages: Add rubygems status)
(FSDG compliant repositories: Update status of debootstrap)
 
(73 intermediate revisions by 3 users not shown)
Line 6: Line 6:
  
 
This page tries to summarize the research about such third party package managers, especially to understand which one can be added in or kept in FSDG compliant distributions, and which ones should be removed or replaced.
 
This page tries to summarize the research about such third party package managers, especially to understand which one can be added in or kept in FSDG compliant distributions, and which ones should be removed or replaced.
 +
 +
Read a related article: [https://www.fsf.org/bulletin/2021/fall/keeping-track-of-freedom-while-managing-packages Keeping track of freedom while managing packages]
  
 
== FSDG compliant repositories ==
 
== FSDG compliant repositories ==
Line 14: Line 16:
 
! Repository type
 
! Repository type
 
! FSDG compliant implementations
 
! FSDG compliant implementations
 +
! References for FSDG compliance
 
|-
 
|-
 
| Browser addons
 
| Browser addons
 
| See [[Group:Software/research/ExternalRepositories/BrowserAddons#Lists_of_FSDG_compliant_lists_of_addons|BrowserAddons]]
 
| See [[Group:Software/research/ExternalRepositories/BrowserAddons#Lists_of_FSDG_compliant_lists_of_addons|BrowserAddons]]
 +
|-
 +
| rowspan=2 | Emacs packages repositories
 +
|
 +
* [https://elpa.nongnu.org/ ELPA non-GNU]
 +
|-
 +
|
 +
* [https://elpa.gnu.org/ ELPA GNU]
 +
| rowspan=3 | GNU Package:
 +
* Free software licenses<ref>https://www.gnu.org/prep/maintain/maintain.html#Licensing-of-GNU-Packages</ref>
 +
* No nonfree dependencies<ref>https://www.gnu.org/help/evaluation.html</ref>
 +
* Does not recommend nonfree programs<ref>https://www.gnu.org/prep/maintain/maintain.html#Ethical-and-Philosophical-Consideration</ref>
 +
|-
 +
| Source packages manager for GNU packages (and their dependencies)
 +
|
 +
* [https://www.gnu.org/software/gsrc/package-list.html GSRC]
 +
|-
 +
| Boot software distribution
 +
|
 +
* [https://gnu.org/software/gnuboot GNU Boot]
 
|-
 
|-
 
| General purpose package manager on top of existing distributions
 
| General purpose package manager on top of existing distributions
 
|  
 
|  
 
* [https://guix.gnu.org Guix]
 
* [https://guix.gnu.org Guix]
 +
| In the [https://www.gnu.org/distros/free-distros.html list of FSDG compliant GNU distros]
 +
|-
 +
| Kernel packages repositories
 +
|
 +
* [https://www.fsfla.org/selibre/linux-libre/download/freed-ora/ freed-ora]
 +
* [https://www.fsfla.org/ikiwiki/selibre/linux-libre/freesh.en.html linux-libre/freesh]
 +
* [https://www.fsfla.org/ikiwiki/selibre/linux-libre/liberty.en.html linux-libre/liberty]
 +
* [https://www.fsfla.org/ikiwiki/selibre/linux-libre/rpmfreedom.en.html linux-libre/rpmfreedom]
 
|}
 
|}
  
The [[Group:Software/research/CrossDistroBootstrap|CrossDistroBootstrap]] also has some information on how reusable are some FSDG distribution repositories. For instance PureOS is now in upstream debootstrap, but other FSDG compliant distributions need to wait for a new debootstrap release, and they might also need to package the PureOS keyring to enable users to safely use their repositories.
+
The [[Group:Software/research/CrossDistroBootstrap|CrossDistroBootstrap]] also has some information on how reusable are some FSDG distribution repositories. For instance PureOS and Trisquel are now in upstream debootstrap, but to use that safely and easily distributions also need to package the PureOS/Trisquel keyrings.
 +
 
 +
As for using other distribution repositories, the [[Group:Software/research/DistroExecutionEnvironments|DistroExecutionEnvironments]] page has more information about which container/virtualization systems work with which distribution.
  
 
== Research ==
 
== Research ==
  
== Programming languages ==
+
=== Programming languages ===
  
 
{| class="wikitable"  border="1"
 
{| class="wikitable"  border="1"
Line 37: Line 69:
 
! Status
 
! Status
 
|-
 
|-
! Cabal
+
! Akku
 +
| [https://akkuscm.org/ Akku]
 +
| R6RS/R7RS scheme
 +
| Its [https://akkuscm.org/docs/manpage.html its man page] has: "Please pay some attention to the license field to make sure that it is accurate. Use the identifiers from the SPDX project, making sure to use an open source license.". This means that it probably allows the artistic license 1.0 which is non-free as [https://opensource.org/license/artistic-1-0/ it is open-source] but [https://www.gnu.org/licenses/license-list.html#ArtisticLicense not free according to GNU] unless someone convince them to change this.
 +
| ?
 
|
 
|
| Haskell
+
{| class="wikitable"  border="1"
| FLOSS license required, points to FSF and OSI for the licenses list
+
! Distribution
 +
! Status
 +
|-
 +
| Dragora
 +
|
 +
|-
 +
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
| {{DistroPackage|Guix|akku}}
 +
|-
 +
| Hyperbola
 +
|
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| Doesn't have Akku
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
|
 +
|-
 +
| PureOS
 +
|
 +
|-
 +
| Trisquel
 +
| Doesn't have Akku
 +
|-
 +
| Ututo S
 +
|
 +
|}
 +
|-
 +
! Alire
 +
| alire (pureOS?)
 +
| Ada, SPARK
 +
| colspan=3 | [https://alire.ada.dev/docs/#the-alire-manifest Not reliable, even allows no license]: "The manifest [...] contains [...] information about the crate [...] such as the name and version, others optional like the licenses"
 +
|-
 +
! [https://conan.io/center/ ConanCenter]
 +
| [https://conan.io/ Conan]
 +
| C/C++ Conan and  repository
 +
| ?
 
| ?
 
| ?
 
|
 
|
Line 51: Line 132:
 
|
 
|
 
|-
 
|-
! Hackage?
+
! CRAN
 +
| ?
 +
| R
 +
| The [https://cran.r-project.org/web/packages/policies.html CRAN policy] has strict license requirements, but it also allows the following nonfree licenses:
 +
* [https://www.gnu.org/licenses/license-list.html#ArtisticLicense Artistic License 1.0]: nonfree
 +
* [https://www.gnu.org/licenses/license-list.html#CC-BY-NC CC-BY-NC, CC-BY-NC-SA, CC-BY-NC-ND]: nonfree, incompatible with the FSDG even for non-functional works.
 +
| Very high. See "Source packages" in the [https://cran.r-project.org/web/packages/policies.html CRAN policy].
 
|
 
|
 +
|-
 +
! [https://github.com/guix-science/guix-cran Guix CRAN]
 +
(unofficial Guix repository)
 +
| N/A
 +
| R
 +
| colspan=2 | Same as CRAN.
 +
| Not referenced by FSDG distributions, so nothing to fix.
 +
Since CRAN licensing information is very strict, it might be very easy to make an FSDG compliant repository out of it, by removing packages with licenses considered nonfree by GNU / The FSF. That repository [https://github.com/guix-science/guix-cran-scripts is already fully automated] so it might be very easy to fix and maintain.
 +
|-
 +
! [https://hackage.haskell.org/ Hackage]
 +
| Cabal
 
| Haskell
 
| Haskell
 +
| FLOSS license required, points to FSF and OSI for the licenses list.
 +
| ?
 +
|
 +
|-
 +
! [https://luarocks.org/ luarocks]
 +
| luarocks
 +
| Lua
 +
| ?
 +
| ?
 +
|
 +
{| class="wikitable"  border="1"
 +
! Distribution
 +
! Status
 +
|-
 +
| Dragora
 +
| [https://repo.or.cz/dragora.git/blob/HEAD:/recipes/lua/luarocks/recipe Has luarocks]
 +
|-
 +
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
| Doesn't have luarocks
 +
|-
 +
| Hyperbola
 +
|
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| Has luarocks
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
|
 +
|-
 +
| PureOS
 +
|
 +
|-
 +
| Trisquel
 +
|
 +
|-
 +
| Ututo S
 +
|
 +
|}
 +
|-
 +
! [https://www.npmjs.com/ npm Registry]
 +
| npm
 +
| JavaScript
 
| ?
 
| ?
 
| ?
 
| ?
Line 62: Line 211:
 
| PHP
 
| PHP
 
| Allow nonfree software, GPL and LGPLv3 (libraries?) not accepted
 
| Allow nonfree software, GPL and LGPLv3 (libraries?) not accepted
 +
| ?
 +
|
 +
|-
 +
! [https://pkg.go.dev/ pkg.go.dev]
 +
|
 +
| Go
 +
| ?
 
| ?
 
| ?
 
|
 
|
Line 73: Line 229:
 
|
 
|
 
{| class="wikitable"  border="1"
 
{| class="wikitable"  border="1"
! Distribution
+
! Distribution
! Status
+
! Status
 +
|-
 +
| Dragora
 +
|
 +
|-
 +
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
|
 +
|-
 +
| Hyperbola
 +
|
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| [https://git.parabola.nu/blacklist.git/tree/blacklist.txt blacklisted]
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
|
 +
|-
 +
| PureOS
 +
|
 +
|-
 +
| Trisquel
 +
| [https://gitlab.trisquel.org/trisquel/ubuntu-purge/-/blob/master/purge-jammy#L118 blacklisted]
 +
|-
 +
| Ututo S
 +
|
 +
|}
 
|-
 
|-
| Dragora
+
! [https://rubygems.org/ RubyGems]
 +
| rubygems
 +
| Ruby
 +
| Allow any license (including nonfree software)
 +
| ?
 
|
 
|
 +
{| class="wikitable"  border="1"
 +
! Distribution
 +
! Status
 +
|-
 +
| Dragora
 +
|
 +
|-
 +
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
|
 +
|-
 +
| Hyperbola
 +
|
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| [https://git.parabola.nu/blacklist.git/tree/blacklist.txt blacklisted]
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
|
 +
|-
 +
| PureOS
 +
|
 +
|-
 +
| Trisquel
 +
|
 +
|-
 +
| Ututo S
 +
|
 +
|}
 
|-
 
|-
| Dynebolic
+
! [https://crates.io/ Crates]
|
+
| Cargo
 +
| Rust
 +
| ?
 +
| ?
 +
| [https://lib.rs/ lib.rs] is a a free frontend to crates so the repository can be viewed without non-free JS.
 
|-
 
|-
| Guix
+
|}
|
+
 
 +
Parabola has a bug report (bug [https://labs.parabola.nu/issues/1035 #1035]) about programming language package managers, it has more reference and information on the issue.
 +
 
 +
=== Docker and flatpak registries ===
 +
 
 +
See [[Group:Software/research/ExternalRepositories/DockerRegistries]] for more details about Docker registries, how to run your own registry easily, etc.
 +
 
 +
There is also a page about flatpak: [[Group:Software/research/ExternalRepositories/FlatpakRegistries]].
 +
 
 +
=== Emacs ===
 +
 
 +
{| class="wikitable"  border="1"
 +
! Repository name
 +
! Repository type
 +
! Enabled by default?
 +
! Licenses requirements
 +
! Reliability of license fields
 +
! Status
 +
! Comments
 
|-
 
|-
| Hyperbola
+
| [https://github.com/babariviere/guix-emacs guix-emacs]
|
+
| Guix packages for MELPA
 +
| N/A
 +
| Same than MELPA?
 +
| ?
 +
| ?
 +
| The packages are generated automatically, so maybe it's possible somehow to filter-out nonfree software if there is some.
 
|-
 
|-
| LibreCMC
+
| [https://elpa.gnu.org/ ELPA GNU]
 +
| Emacs Lisp Package Archive
 +
| {{yes|Yes, since emacs 24}}<ref name="emacswiki-elpa">Reference: https://www.emacswiki.org/emacs/ELPA</ref>
 +
| Free software<ref name="savannah">The repository is hosted in savannah. Since Savannah has [https://savannah.gnu.org/register/requirements.php extremely strict licensing requirements for hosting], so it should be OK.</ref>
 +
| {{Yes|Very strict}}<ref name="savannah"></ref>
 +
| {{Yes|FSDG compliant}}<ref name="savannah"></ref>
 
|
 
|
 
|-
 
|-
| Parabola
+
| [https://elpa.nongnu.org/ ELPA non-GNU]
| [https://git.parabola.nu/blacklist.git/tree/blacklist.txt blacklisted]
+
| Emacs Lisp Package Archive
|-
+
| {{yes|Yes, since emacs 28.1}}<ref name="emacswiki-elpa"></ref>
| ProteanOS
+
| Free software<ref name="savannah"></ref>
 +
| {{Yes|Very strict}}<ref name="savannah"></ref>
 +
| {{Yes|FSDG compliant}}<ref name="savannah"></ref>
 
|
 
|
 
|-
 
|-
| Replicant
+
| [https://www.emacswiki.org/emacs/MELPA MELPA]
 +
| ELPA-compatible package repository
 +
| No
 +
| ?
 +
| ?
 +
| ?
 
|
 
|
 
|-
 
|-
| PureOS
+
|}
|
+
 
 +
=== Browser addons ===
 +
 
 +
For known FSDG compliant repositories that have browser addons, see the [[Group:Software/research/ExternalRepositories/BrowserAddons|BrowserAddons]] wiki page.
 +
 
 +
{| class="wikitable"  border="1"
 +
! Repository name / URL
 +
! Compatible browsers
 +
! Licenses requirements
 +
! Reliability of license fields
 +
! Status
 +
! Comments
 
|-
 
|-
| Trisquel
+
| addons.mozilla.org
 +
|
 +
* Firefox and derivatives
 +
|
 
|
 
|
|-
+
* Don't seem very strict.
| Ututo S
+
* I was told that it wasn't possible to make certain distinctions (multiple licenses? GPL specific versions? Licenses with exceptions (GPL + exception), etc.
 +
|  
 +
* Not FSDG compliant
 +
* Already removed from most/all FSDG compliant distributions.
 
|
 
|
 
|}
 
|}
|-
+
 
! ?
+
=== Programs ===
| rubygems
+
 
| Ruby
 
| Allow any license (including nonfree software)
 
| ?
 
|
 
 
{| class="wikitable"  border="1"
 
{| class="wikitable"  border="1"
! Distribution
+
! Program name
 +
! Program type
 +
! Repository type
 +
! Repository website
 +
! Licenses requirements
 +
! Reliability of license fields
 
! Status
 
! Status
 
|-
 
|-
| Dragora
+
! Arduino
 +
| IDE
 +
| Repository of software to support microcontroller boards (available in "Boards Manager")
 +
|
 
|
 
|
|-
 
| Dynebolic
 
 
|
 
|
 +
| The Arduino IDE has a package manager in "Tools" -> "Board: [...]" -> "Boards Manager".
 +
{| class="wikitable"  border="1"
 +
! Distribution
 +
! Status
 +
|-
 +
| Dragora
 +
|
 +
|-
 +
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
| Doesn't ship arduino (yet)
 +
|-
 +
| Hyperbola
 +
|
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| Present
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
| Doesn't ship arduino
 +
|-
 +
| PureOS byzantium
 +
| Has an arduino package
 +
|-
 +
| Trisquel
 +
|
 +
|-
 +
| Ututo S
 +
|
 +
|}
 
|-
 
|-
| Guix
+
! Docker
 +
| Virtualization software
 +
| Repository of distribution installation images and software images
 
|
 
|
|-
 
| Hyperbola
 
 
|
 
|
|-
 
| LibreCMC
 
 
|
 
|
 +
| Docker has a default repository for images according to the [https://github.com/docker/docker/issues/7203 docker bug #7203] and to a [https://stackoverflow.com/questions/33054369/how-to-change-the-default-docker-registry-from-docker-io-to-my-private-registry stackoverflow comment]. Since that repository is used in the 'docker' command line tool, it needs to be replaced or removed.
 +
{| class="wikitable"  border="1"
 +
! Distribution
 +
! Status
 +
|-
 +
| Dragora
 +
|
 +
|-
 +
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
| Has a docker package
 +
|-
 +
| Hyperbola
 +
|
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| <s>[https://labs.parabola.nu/issues/3422?next_issue_id=3421 #3421]</s> Patched to not use docker.io by default. Users have to manually specify which docker repository to use when using docker commands that use docker repositories.
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
| Doesn't ship docker
 +
|-
 +
| PureOS
 +
| Has a docker.io package
 +
|-
 +
| Trisquel
 +
|
 +
|-
 +
| Ututo S
 +
|
 +
|}
 
|-
 
|-
| Parabola
+
! GNOME Boxes (+osinfo-db)
| [https://git.parabola.nu/blacklist.git/tree/blacklist.txt blacklisted]
+
| Virtualization software
|-
+
| Repository of distribution installation images that is constructed with libosinfo and osinfo-db
| ProteanOS
 
 
|
 
|
|-
 
| Replicant
 
 
|
 
|
|-
 
| PureOS
 
 
|
 
|
|-
 
| Trisquel
 
 
|
 
|
 +
{| class="wikitable"  border="1"
 +
! Distribution
 +
! Status
 +
|-
 +
| Dragora
 +
|
 +
|-
 +
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
| [https://issues.guix.gnu.org/60109 Bug #60109]
 +
|-
 +
| Hyperbola
 +
|
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| Gnome Boxes and/or libosinfo are patched to only show FSDG compliant distributions.
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
| Doesn't ship GNOME Boxes
 +
|-
 +
| PureOS byzantium
 +
| Has a gnome-boxes package
 +
|-
 +
| Trisquel
 +
|
 +
|-
 +
| Ututo S
 +
|
 +
|}
 
|-
 
|-
| Ututo S
+
! Kidad
 +
| PCB design software
 +
| Repository of Kicad plugins
 +
| https://repository.kicad.org/
 
|
 
|
|}
 
|-
 
! ?
 
| ?
 
| Rust
 
| ?
 
| ?
 
 
|
 
|
|-
+
| In tools->Plugin and content manager, there is a package manager of Kicad addons.
|}
 
 
 
Parabola has a bug report (bug [https://labs.parabola.nu/issues/1035 #1035]) about programming language package managers, it has more reference and information on the issue.
 
 
 
=== Programs ===
 
 
 
 
{| class="wikitable"  border="1"
 
{| class="wikitable"  border="1"
! Program name
+
! Distribution
! Program type
+
! Status
! Repository type
+
|-
! Repository website
+
| Dragora
! Licenses requirements
+
|
! Reliability of license fields
+
|-
! Status
+
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
| Has Kicad
 +
|-
 +
| Hyperbola
 +
|
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| Has a kicad package
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
| Doesn't ship kicad
 +
|-
 +
| PureOS byzantium
 +
| Has a kicad package
 +
|-
 +
| Trisquel
 +
|
 +
|-
 +
| Ututo S
 +
|
 +
|}
 
|-
 
|-
 
! Libreoffice
 
! Libreoffice
Line 186: Line 598:
 
* Needs confirmation of the bug (Does upstream have licenses requirements or not?).
 
* Needs confirmation of the bug (Does upstream have licenses requirements or not?).
 
{| class="wikitable"  border="1"
 
{| class="wikitable"  border="1"
! Distribution
+
! Distribution
! Status
+
! Status
 +
|-
 +
| Dragora
 +
|
 +
|-
 +
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
| {{DistroPackage|Guix|libreoffice}}
 +
|-
 +
| Hyperbola
 +
|
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| [https://labs.parabola.nu/issues/3412 Bug #3412]
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
| Doesn't ship libreoffice
 +
|-
 +
| PureOS byzantium
 +
| Has a libreoffice package
 +
|-
 +
| Trisquel
 +
| {{DistroPackage|Trisquel|libreoffice}}
 +
|-
 +
| Ututo S
 +
|
 +
|}
 
|-
 
|-
| Dragora
+
! LXC
|
+
| Virtualization software
 +
| Repository of distribution packages / rootfs
 +
| [http://images.linuxcontainers.org/ images.linuxcontainers.org]
 +
| ?
 +
| ?
 +
| LXC provides $prefix/share/lxc/templates/lxc-download which can download various distributions like Debian, Ubuntu, etc.
 +
{| class="wikitable"  border="1"
 +
! Distribution
 +
! Status
 +
|-
 +
| Dragora
 +
|
 +
|-
 +
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
| '/gnu/store/*-lxc-*/share/lxc/templates/lxc-download --list' lists non-fsdg compliant distributions.
 +
|-
 +
| Hyperbola
 +
|
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| '/usr/share/lxc/templates/lxc-download --list' lists non-fsdg compliant distributions.
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
|
 +
|-
 +
| PureOS
 +
|
 +
|-
 +
| Trisquel
 +
|
 +
|-
 +
| Ututo S
 +
|
 +
|}
 
|-
 
|-
| Dynebolic
+
! Nextcloud
|
+
| Collaboration server
 +
| Addons
 +
| [https://apps.nextcloud.com/ apps.nextcloud.com]
 +
| ?
 +
| ?
 +
| TODO: Check if Nextcloud uses apps.nextcloud.com
 +
{| class="wikitable"  border="1"
 +
! Distribution
 +
! Status
 +
|-
 +
| Dragora
 +
|
 +
|-
 +
| Dynebolic
 +
|
 +
|-
 +
| Guix
 +
| [https://packages.guix.gnu.org/search/?query=nextcloud Doesn't have nextcloud]
 +
|-
 +
| Hyperbola
 +
| [https://www.hyperbola.info/packages/?sort=&q=nextcloud Doesn't have nextcloud]
 +
|-
 +
| LibreCMC
 +
|
 +
|-
 +
| Parabola
 +
| [https://www.parabola.nu/packages/community-testing/x86_64/nextcloud/ Has nextcloud]
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
| Doesn't have nextcloud
 +
|-
 +
| PureOS
 +
|
 +
|-
 +
| Trisquel
 +
| [https://packages.trisquel.org/search?keywords=nextcloud&searchon=names&suite=nabia&section=all Doesn't have nextcloud]
 +
|-
 +
| Ututo S
 +
|
 +
|}
 
|-
 
|-
| Guix
+
! phoronix-test-suite
|
+
| Performance benchmarking tool
|-
+
| tests
| Hyperbola
+
|
|
+
|
|-
+
|
| LibreCMC
+
|
|
+
{| class="wikitable"  border="1"
|-
+
! Distribution
| Parabola
+
! Status
| [https://labs.parabola.nu/issues/3412 Bug #3412]
+
|-
|-
+
| Dragora
| ProteanOS
+
| Doesn't have phoronix-test-suite
|
+
|-
|-
+
| Dynebolic
| Replicant
+
|
| Doesn't ship libreoffice
+
|-
|-
+
| Guix
| PureOS
+
| Filters out nonfree tests
|
+
|-
|-
+
| Hyperbola
| Trisquel
+
| Doesn't have phoronix-test-suite
|
+
|-
|-
+
| LibreCMC
| Ututo S
+
|
|
+
|-
|}
+
| Parabola
 +
| Filters out nonfree tests
 +
|-
 +
| ProteanOS
 +
|
 +
|-
 +
| Replicant
 +
| Doesn't have phoronix-test-suite
 +
|-
 +
| PureOS
 +
|  
 +
|-
 +
| Trisquel
 +
|  
 +
* [https://packages.trisquel.info/search?keywords=phoronix&searchon=names&suite=all&section=all Only available in Trisquel 9.0 (etiona)]
 +
* [https://trisquel.info/en/issues/23630 bug #23630 (for etiona)]
 +
|-
 +
| Ututo S
 +
|
 +
|}
 
|-
 
|-
 
! Wesnoth
 
! Wesnoth
Line 242: Line 791:
 
|
 
|
 
|-
 
|-
 +
|}
 +
 +
=== GNU packages ===
 +
 +
{| class="wikitable"  border="1"
 +
! Repository name
 +
! Repository type
 +
! Licenses requirements
 +
! Reliability of license fields
 +
! Status
 +
|-
 +
! [https://launchpad.net/~dns/+archive/ubuntu/gnu?field.series_filter= GNU PPA]
 +
|
 +
|
 +
|
 
|}
 
|}
  
Line 259: Line 823:
  
 
''(Note that this page does not automatically update; if you add another page under Hardware/, make sure to [{{fullurl:{{FULLPAGENAME}}|action=purge}} refresh/purge this page].)''
 
''(Note that this page does not automatically update; if you add another page under Hardware/, make sure to [{{fullurl:{{FULLPAGENAME}}|action=purge}} refresh/purge this page].)''
 +
 +
 +
== See also ==
 +
* [[Group:Software/research/DistroUpstreamSupport|DistroUpstreamSupport]]: This page has a list of which FSDG distributions are supported in some of the external repositories present here.
 +
* [[Group:Software/research/CrossDistroBootstrap|CrossDistroBootstrap]]: For how to bootstrap an FSDG distribution from another FSDG compliant distribution.
 +
 +
== References ==
 +
<references />
  
 
[[is entity::group| ]]
 
[[is entity::group| ]]
 
[[organized around::issue| ]]
 
[[organized around::issue| ]]

Latest revision as of 11:00, 22 September 2024

Introduction

While distributions typically have high quality packages that work fine, a lot of software is not packaged in distributions.

This often lead users to rely on third party package managers that are often provided by the distribution.

This page tries to summarize the research about such third party package managers, especially to understand which one can be added in or kept in FSDG compliant distributions, and which ones should be removed or replaced.

Read a related article: Keeping track of freedom while managing packages

FSDG compliant repositories

This contains lists of FSDG compliant repositories.

Repository type FSDG compliant implementations References for FSDG compliance
Browser addons See BrowserAddons
Emacs packages repositories
GNU Package:
  • Free software licenses[1]
  • No nonfree dependencies[2]
  • Does not recommend nonfree programs[3]
Source packages manager for GNU packages (and their dependencies)
Boot software distribution
General purpose package manager on top of existing distributions In the list of FSDG compliant GNU distros
Kernel packages repositories

The CrossDistroBootstrap also has some information on how reusable are some FSDG distribution repositories. For instance PureOS and Trisquel are now in upstream debootstrap, but to use that safely and easily distributions also need to package the PureOS/Trisquel keyrings.

As for using other distribution repositories, the DistroExecutionEnvironments page has more information about which container/virtualization systems work with which distribution.

Research

Programming languages

Repository name Programs / Packages Repository type Licenses requirements Reliability of license fields Status
Akku Akku R6RS/R7RS scheme Its its man page has: "Please pay some attention to the license field to make sure that it is accurate. Use the identifiers from the SPDX project, making sure to use an open source license.". This means that it probably allows the artistic license 1.0 which is non-free as it is open-source but not free according to GNU unless someone convince them to change this. ?
Distribution Status
Dragora
Dynebolic
Guix

akku

Hyperbola
LibreCMC
Parabola Doesn't have Akku
ProteanOS
Replicant
PureOS
Trisquel Doesn't have Akku
Ututo S
Alire alire (pureOS?) Ada, SPARK Not reliable, even allows no license: "The manifest [...] contains [...] information about the crate [...] such as the name and version, others optional like the licenses"
ConanCenter Conan C/C++ Conan and repository ? ?
CPAN ? Perl Allow any license (including nonfree software) ?
CRAN ? R The CRAN policy has strict license requirements, but it also allows the following nonfree licenses: Very high. See "Source packages" in the CRAN policy.
Guix CRAN

(unofficial Guix repository)

N/A R Same as CRAN. Not referenced by FSDG distributions, so nothing to fix.

Since CRAN licensing information is very strict, it might be very easy to make an FSDG compliant repository out of it, by removing packages with licenses considered nonfree by GNU / The FSF. That repository is already fully automated so it might be very easy to fix and maintain.

Hackage Cabal Haskell FLOSS license required, points to FSF and OSI for the licenses list. ?
luarocks luarocks Lua ? ?
Distribution Status
Dragora Has luarocks
Dynebolic
Guix Doesn't have luarocks
Hyperbola
LibreCMC
Parabola Has luarocks
ProteanOS
Replicant
PureOS
Trisquel
Ututo S
npm Registry npm JavaScript ? ?
PECL ? PHP Allow nonfree software, GPL and LGPLv3 (libraries?) not accepted ?
pkg.go.dev Go ? ?
Python Package Index
  • pip
Python Allow any license (including nonfree software) ?
Distribution Status
Dragora
Dynebolic
Guix
Hyperbola
LibreCMC
Parabola blacklisted
ProteanOS
Replicant
PureOS
Trisquel blacklisted
Ututo S
RubyGems rubygems Ruby Allow any license (including nonfree software) ?
Distribution Status
Dragora
Dynebolic
Guix
Hyperbola
LibreCMC
Parabola blacklisted
ProteanOS
Replicant
PureOS
Trisquel
Ututo S
Crates Cargo Rust ? ? lib.rs is a a free frontend to crates so the repository can be viewed without non-free JS.

Parabola has a bug report (bug #1035) about programming language package managers, it has more reference and information on the issue.

Docker and flatpak registries

See Group:Software/research/ExternalRepositories/DockerRegistries for more details about Docker registries, how to run your own registry easily, etc.

There is also a page about flatpak: Group:Software/research/ExternalRepositories/FlatpakRegistries.

Emacs

Repository name Repository type Enabled by default? Licenses requirements Reliability of license fields Status Comments
guix-emacs Guix packages for MELPA N/A Same than MELPA? ? ? The packages are generated automatically, so maybe it's possible somehow to filter-out nonfree software if there is some.
ELPA GNU Emacs Lisp Package Archive Yes, since emacs 24[4] Free software[5] Very strict[5] FSDG compliant[5]
ELPA non-GNU Emacs Lisp Package Archive Yes, since emacs 28.1[4] Free software[5] Very strict[5] FSDG compliant[5]
MELPA ELPA-compatible package repository No ? ? ?

Browser addons

For known FSDG compliant repositories that have browser addons, see the BrowserAddons wiki page.

Repository name / URL Compatible browsers Licenses requirements Reliability of license fields Status Comments
addons.mozilla.org
  • Firefox and derivatives
  • Don't seem very strict.
  • I was told that it wasn't possible to make certain distinctions (multiple licenses? GPL specific versions? Licenses with exceptions (GPL + exception), etc.
  • Not FSDG compliant
  • Already removed from most/all FSDG compliant distributions.

Programs

Program name Program type Repository type Repository website Licenses requirements Reliability of license fields Status
Arduino IDE Repository of software to support microcontroller boards (available in "Boards Manager") The Arduino IDE has a package manager in "Tools" -> "Board: [...]" -> "Boards Manager".
Distribution Status
Dragora
Dynebolic
Guix Doesn't ship arduino (yet)
Hyperbola
LibreCMC
Parabola Present
ProteanOS
Replicant Doesn't ship arduino
PureOS byzantium Has an arduino package
Trisquel
Ututo S
Docker Virtualization software Repository of distribution installation images and software images Docker has a default repository for images according to the docker bug #7203 and to a stackoverflow comment. Since that repository is used in the 'docker' command line tool, it needs to be replaced or removed.
Distribution Status
Dragora
Dynebolic
Guix Has a docker package
Hyperbola
LibreCMC
Parabola #3421 Patched to not use docker.io by default. Users have to manually specify which docker repository to use when using docker commands that use docker repositories.
ProteanOS
Replicant Doesn't ship docker
PureOS Has a docker.io package
Trisquel
Ututo S
GNOME Boxes (+osinfo-db) Virtualization software Repository of distribution installation images that is constructed with libosinfo and osinfo-db
Distribution Status
Dragora
Dynebolic
Guix Bug #60109
Hyperbola
LibreCMC
Parabola Gnome Boxes and/or libosinfo are patched to only show FSDG compliant distributions.
ProteanOS
Replicant Doesn't ship GNOME Boxes
PureOS byzantium Has a gnome-boxes package
Trisquel
Ututo S
Kidad PCB design software Repository of Kicad plugins https://repository.kicad.org/ In tools->Plugin and content manager, there is a package manager of Kicad addons.
Distribution Status
Dragora
Dynebolic
Guix Has Kicad
Hyperbola
LibreCMC
Parabola Has a kicad package
ProteanOS
Replicant Doesn't ship kicad
PureOS byzantium Has a kicad package
Trisquel
Ututo S
Libreoffice Document editing software Extensions extensions.libreoffice.org ? ?

TODO:

  • Needs confirmation of the bug (Does upstream have licenses requirements or not?).
Distribution Status
Dragora
Dynebolic
Guix

libreoffice

Hyperbola
LibreCMC
Parabola Bug #3412
ProteanOS
Replicant Doesn't ship libreoffice
PureOS byzantium Has a libreoffice package
Trisquel

libreoffice

Ututo S
LXC Virtualization software Repository of distribution packages / rootfs images.linuxcontainers.org ? ? LXC provides $prefix/share/lxc/templates/lxc-download which can download various distributions like Debian, Ubuntu, etc.
Distribution Status
Dragora
Dynebolic
Guix '/gnu/store/*-lxc-*/share/lxc/templates/lxc-download --list' lists non-fsdg compliant distributions.
Hyperbola
LibreCMC
Parabola '/usr/share/lxc/templates/lxc-download --list' lists non-fsdg compliant distributions.
ProteanOS
Replicant
PureOS
Trisquel
Ututo S
Nextcloud Collaboration server Addons apps.nextcloud.com ? ? TODO: Check if Nextcloud uses apps.nextcloud.com
Distribution Status
Dragora
Dynebolic
Guix Doesn't have nextcloud
Hyperbola Doesn't have nextcloud
LibreCMC
Parabola Has nextcloud
ProteanOS
Replicant Doesn't have nextcloud
PureOS
Trisquel Doesn't have nextcloud
Ututo S
phoronix-test-suite Performance benchmarking tool tests
Distribution Status
Dragora Doesn't have phoronix-test-suite
Dynebolic
Guix Filters out nonfree tests
Hyperbola Doesn't have phoronix-test-suite
LibreCMC
Parabola Filters out nonfree tests
ProteanOS
Replicant Doesn't have phoronix-test-suite
PureOS
Trisquel
* Only available in Trisquel 9.0 (etiona)
* bug #23630 (for etiona)
Ututo S
Wesnoth Game Addons ? ? ?
Xonotic Game Content downloaded during online games:
  • Maps
  • Music
  • Other?
? ? ?

GNU packages

Repository name Repository type Licenses requirements Reliability of license fields Status
GNU PPA

List of pages

This set of pages talks about external repositories.


(Note that this page does not automatically update; if you add another page under Hardware/, make sure to refresh/purge this page.)


See also

  • DistroUpstreamSupport: This page has a list of which FSDG distributions are supported in some of the external repositories present here.
  • CrossDistroBootstrap: For how to bootstrap an FSDG distribution from another FSDG compliant distribution.

References


"issue" is not in the list (interest, location, project, school) of allowed values for the "Organized around" property.