[Dev] [RFC] blacklist/your-freedom conflicts/replaces stragegy

Isaac David isacdaavid at isacdaavid.info
Mon Oct 2 07:07:45 GMT 2017

Luke Shumaker wrote :
> now I'm questioning more of the premise.  Does it even need
> the libre-replacement, or does it just need a boolean of whether
> another package has that name or provides that name?  Wouldn't that
> better be served by querying the repos than by manually keeping a .txt
> file in sync with them?

i see. not only does your-freedom not need that info; it's not
even accurately duplicated, as I'll show next...

> What if we edited a simpler file that didn't have
> replacement info, and had a program that output a file more like the
> current blacklist.txt?

a better `libreblacklist get-rep` in other words.
`pacman -Ssq "^arch-pkg$"` will return all providers, but miss
replacements. expac is perfectly suited at providing that information

i've been using an awk script in conjunction with it, and comparing to
`libreblacklist get-rep` to fix some sore thumbs. i'm sharing the
less obvious ones so that everyone has a chance to comment before i go
on fixing them:

apache-ant-doc:apache-ant                        # no package 
replaces/provides it
archey3:paraboley                                # same. fix 
archiso:parabolaiso                              # BUG? actual rep is 
firefox:                                         # needs no explanation
firefox-i18n-be:                                 # add to 
firefox-i18n-csb:                                # add to 
firefox-i18n-*:                                  # same as firefox
font-bh-ttf:font-bh-ttf                          # no 
font-misc-meltho:font-misc-meltho                # no rep. Arch moved 
to xorg-fonts-misc
glsof:glsof                                      # no rep.
linux-hardened:linux-libre-grsec                 # superseded by 
linux-hardened-headers:linux-libre-grsec-headers # see above
linux-hardened-docs:linux-libre-grsec-docs       # see above
luxblend25:blender-addon-luxrender               # in abslibre but 
missing from repos
nltk-data:nltk-data                              # no rep.
nvidia-304xx-utils:                              # BUG?, replaced by 
nvidia-340xx-utils:                              # see above
nvidia-cg-toolkit:                               # BUG?, replaced by 
nvidia-utils:                                    # see above
opencl-nvidia:                                   # BUG? replaced by 
opencl-nvidia-304xx:                             # see above
opencl-nvidia-340xx:                             # see above
unarj:arj                                        # arj doesn't 
explicitly say so

of course there are many other discrepancies where blacklist.txt lists
less replacements than there actually are.

it takes expac and awk less than a second to spit all the repo
metadata, reorder it by replaced/provided package and find the
hundreds of arch-pkgs (or any target list for that matter); so i don't
think we would gain anything by duplicating some of the expac
functionality in, say, a libalpm binary.

libretools already depends on expac, so maybe this could be the basis
for a renewed and more versatile `libreblacklist get-rep`. i'm still
planning to make that trivial fix for `get-reason` btw... got lost in
boring shit last week.

Isaac David
GPG: 38D33EF29A7691134357648733466E12EC7BA943

More information about the Dev mailing list