Open reback00 opened 4 years ago
I like that idea! xbps-src should make that pretty easy because you can just put patches in the patches folder of a program. Do you know if Parabola has libre patches somewhere in its git repo, or do you think we'll need to diff the sources ourselves?
Yes, I think patches will make it easier.
Parabola has patches inside each package. Like this one for minitube. For some other they have minor changes in the PKGBUILD (template equivalent). Like you can check out engrampa
for arch and parabola. They just basically removed unace
and unrar
dependencies.
I'm soooo happy to say that we're more than halfway there to liberating these ~200 packages.
I have a list here. It lists the packages and has a x
at the beginning of the packages that have been processed (meaning that we don't need to think about it anymore). We can have a done-percentage from this:
wget https://gitlab.com/-/snippets/2035588/raw/master/list.txt || curl -LO https://gitlab.com/-/snippets/2035588/raw/master/list.txt
echo $(echo "scale=2; $(grep '^x ' list.txt | wc -l) / $(cat list.txt | wc -l) * 100" | bc)"%"
Right now it returns 52.00%
. Yaaayyy!
Yay! Great job!
How is progress on this currently? Been a year now, after all. I'm a bit confused about how Ymir Linux works, are its patched packages significantly behind Void Linux or is it mostly fine?
GNU has this weird but necessary philosophy that no software should even mention the name of a nonfree software. This is very hard to achieve and someone might say unnecessary. But RMS has been proven right over and over again. So there might be some weight to it.
Parabola's blacklist.txt has nearly a thousand packages with major or minor issues. This file lists the offending packages in a
:
separated list. Let's say they are columns. As far as I know, packages with major issues have an empty second column and ones with minor issues have the same value on second column as the first column. Second column seems to be kind of like a whitelist for minor offenses. We can utilize this and prepare an awk command to make it more readable:Which should output something like this:
The major issues may be hard (or even impossible) to fix, but minor ones should be fixable. I mean Parabola project already did this. Anybody can check their Packages, search for a package, and see its source to understand how they did it. We can add
| grep 'minor' | wc -l
at the end of the awk command above, and it returns202
packages, which is doable I think.We can have a
whitelist.txt
onyour-freedom
and when we liberate a package, we can just add it to that file. Once we liberate those ~200 packages, we can uncomment the line to allow all the minor packages. Our work then would be to maintain those packages with upstream. But let me know your thoughts.