README.md 7.7 KB

Liberated package changes

This directory contains fixes, patches, changes for liberating packages for Void. Mainly created for Drake Newell's void-packages repository.

Liberated package list

Disclaimer: They are not guaranteed to be liberated. Think of them as best effort. If you find anything to be not Free, raise an issue.

  1. minitube
  2. libxfce4ui - Void package was already free of the offending name, so added directly to your-freedom allowlist.txt
  3. grub
  4. p7zip
  5. texlive-core
  6. texlive-fontsextra
  7. texlive20*-bin - just renamed void.profile to xbps.profile, minor changes in comments texlive2014-bin texlive2016-bin texlive2017-bin texlive2018-bin texlive2019-bin texlive2020-bin
  8. texlive-latexextra
  9. libsynctex
  10. kio
  11. abiword
  12. ark
  13. epiphany
  14. epdfview
  15. khotkeys
  16. midori
  17. netsurf
  18. xarchiver
  19. unp
  20. atool
  21. okular
  22. mcomix
  23. openexr
  24. ponysay
  25. avidemux (listed as avidemux-cli, avidemux-qt from the Arch side)
  26. blackbox
  27. libosinfo
  28. hydrogen
  29. hexchat
  30. gloobus-preview
  31. xscreensaver
  32. SDL
  33. cool-retro-term
  34. faenza-icon-theme
  35. faience-icon-theme
  36. povray
  37. smplayer
  38. virt-manager
  39. python-reportlab
  40. pysolfc-cardsets
  41. opencv (version 3.x)
  42. opencv4 (version 4.x)
  43. mesa-demos
  44. perl-Algorithm-Diff
  45. openmw
  46. bogofilter
  47. clementine
  48. hplip
  49. bibletime
  50. qutebrowser
  51. libksysguard
  52. musescore
  53. nextcloud-client
  54. qtcreator
  55. mate-icon-theme-faenza
  56. gnome-boxes
  57. kodi
  58. supercollider
  59. kdevelop
  60. blender
  61. ditaa
  62. ruby
  63. quassel* quassel quassel-client-shared quassel-core quassel-client
  64. retroarch
  65. otter-browser
  66. libkgapi
  67. debootstrap
  68. netpbm
  69. base-files
  70. xorg-fonts

Already libre on Void's repo

This is a list of packages* which are already free on Void's repo and does not need modifying packages. These were polluted on the Arch's package and hence was included on Parabola's blacklist.txt. But those pollutions are not there on Void's side. So these packages are perfectly safe to install from Void's repo:

  • engrampa
  • libxfce4ui
  • acpi_call-dkms
  • cowsay
  • mc
  • lesspipe
  • psensor: because doesn't depend on libxnvctrl
  • soundkonverter: because doesn't depend on faac or mac
  • openshot: doesn't depend on faac
  • asciidoc: doesn't depend on nonfree fop
  • freerdp: doesn't depend on nonfree freerdp
  • mplayer: doesn't depend on faac
  • memtest86+: builds from source
  • shntool: doesn't depend on mac
  • openttd: doesn't have openttd-opensfx as optdep
  • plasma-desktop: doesn't have discover as dep
  • libogre: doesn't have nvidia-cg-toolkit as dep
  • mate-sensors-applet: doesn't have libxnvctrl as dep
  • cups-filters: doesn't have foomatic-db-nonfree as dep
  • wireguard: doesn't build for a certain kernel
  • handbrake: uses system deps
  • handbrake-cli: uses system deps
  • clamav: doesn't use libclamunrar
  • icedtea-web: doesn't require firefox
  • tp_smapi-dkms: doesn't build for linux kernel specifically
  • vhba-module-dkms: doesn't build for linux kernel specifically
  • signon-ui: doesn't build with webengine
  • bbswitch: doesn't build for linux kernel specifically
  • java-commons-io: builds from source already
  • jedit: builds from source already
  • apache-fop: builds from source already
  • syslinux: branding issues are nonmajor right now, will add Ymir splash later
  • ruby-devel-doc

For these, add the Void's package name on allowlist.txt twice, like <package name>:<package name>.

* This is not an exhaustive list. There might be other packages that are already libre on Void.

Unavailable on Void

Packages* on blacklist.txt that are not available on Void Linux yet, so skipped liberation:

  • pacman
  • cuneiform
  • audex
  • audio-convert
  • ecasound
  • libquicktime
  • mencoder
  • xmms2
  • acpi_call
  • texlive-bin (available as texliveYYYY-bin instead)
  • wings3d
  • xarchiver-gtk2 (has xarchiver only, instead)
  • xerces2-java
  • filesystem
  • sensors-applet
  • virt-install (has virt-manager, virt-manager-tools instead)
  • lib32-mesa-demos
  • uboot-a10-olinuxino-lime
  • uboot-a13-olinuxino
  • uboot-a20-olinuxino-lime2
  • uboot-a20-olinuxino-lime
  • uboot-chiliboard
  • uboot-cubieboard2
  • uboot-cubieboard
  • uboot-cubietruck
  • uboot-cubox
  • uboot-trimslice
  • uboot-usbarmory
  • uboot-wandboard
  • kipi-plugins
  • kde-development-environment-meta
  • icedtea-web-doc (has only icedtea-web)
  • tp_smapi-lts
  • tp_smapi
  • kodi-bin
  • kodi-eventclients
  • kodi-gbm
  • kodi-tools-texturepacker
  • kodi-wayland
  • kodi-x11
  • marble-common (has only marble)
  • vhba-module
  • kdepim-addons
  • quassel-client-small
  • bladerf

They will need to be liberated if the packages arrive on Void. Note: Please do not add them on allowlist.txt because they need to be automatically conflicted with your-freedom when they arrive on Void, so that necessary steps can be taken to liberate them.

Items that have a different name on Void should not be listed here and go on the "Diffrent name" list below.

* This is not an exhaustive list. There might be other packages.

Different name on Void

These packages* have different name on Arch/Parabola, so listed as the same. But on Void has different name. These are listed below as <arch package> -> <void package>:

  • gst-plugins-bad -> gst-plugins-bad1
  • gst-plugins-bad-libs -> gst-plugins-bad1-devel
  • sdl -> SDL
  • plasma-meta -> plasma-desktop
  • opencv -> opencv, opencv4
  • ogre -> libogre
  • lib32-sdl -> SDL-devel-32bit
  • perl-algorithm-diff -> perl-Algorithm-Diff
  • wireguard-lts -> wireguard
  • fop -> apache-fop
  • kodi-dev -> kodi-devel
  • tp_smapi -> tp_smapi-dkms
  • fop -> apache-fop
  • ruby-docs -> ruby-devel-doc
  • quassel-monolithic -> quassel
  • lsb-release -> base-files

For these, the Void package name should be listed in srcpkgs/your-freedom/denylist.txt if not liberated already. The entry should be removed from denylist.txt and added (important!) in srcpkgs/your-freedom/allowlist.txt when it is liberated. Nothing needs to be done for the Arch package name.

* This is not an exhaustive list. There might be other packages.

Unavailable on Arch / Parabola / blacklist.txt but available on Void

  • clementine-spotify

They should be added to denylist.txt in both liberatedpkgs and srcpkgs.

* This is not an exhaustive list. There might be other packages.

Dev stuff

  • Some files are saved with prefix l_ which are just dev notes or useful files.
  • Some files are of 0 bytes (empty) which are there to signify that the file should be deleted.
  • To find some package from 32bit architecture: sudo xbps-install -Syv void-repo-multilib{,-nonfree} sudo xbps-install -S xbps-query -Rs <query>

Notes

git diff to -Np1

XBPS complains when patching with git diff. We can simply remove lines starting with diff --git and index:

# Convert git diff to be used with -Np1
sed -i '/^diff --git/d' example.patch
sed -i '/^index /d' example.patch

TODO

Reminder for future:

  1. Check SDL2 based on SDL to see if it needs+can be liberated
  2. Add Ymir logos for faenza-icon-theme
  3. Add Ymir logos for faience-icon-theme and investigate the need for adding distributor-logo-parabola.svg
  4. Check hplip-gui to see if libre
  5. Investigate musescore downloading font during build
  6. Investigate kodi talking to github during build. Build cannot continue without internet.
  7. In ditaa template check if there's any need to remove any files similar to what is done on Parabola PKGBUILD
  8. Add splash on syslinux package
  9. base-system: has reference to Void, has void-artwork dep
  10. void-artwork: should denylist it and make a new ymir-artwork package