Parabola Issue Tracker: Issueshttps://labs.parabola.nu/https://labs.parabola.nu/favicon.ico?15367742552023-04-15T13:49:16ZParabola Issue Tracker
Redmine Packages - Bug #3470 (confirmed): arduino: Has a package managerhttps://labs.parabola.nu/issues/34702023-04-15T13:49:16ZGNUtooGNUtoo@cyberdimension.org
<p>The package manager is available in "Tools" -> "Board: [...]" -> "Boards Manager".</p>
<p>I've no idea of it's policies, so we need to look if the repository is fully free software. If it's fully free it might be OK FSDG wise.</p>
<p>I've also added an entry in the Libreplanet Wiki about it: <a class="external" href="https://libreplanet.org/wiki/Group:Software/research/ExternalRepositories">https://libreplanet.org/wiki/Group:Software/research/ExternalRepositories</a></p> Packages - Bug #3469 (confirmed): arduino-avr-core contain binaries (but also their source code)https://labs.parabola.nu/issues/34692023-04-15T13:39:22ZGNUtooGNUtoo@cyberdimension.org
<p>The arduino package isn't useful alone: it needs some extra software to support specific microcontroller boards.</p>
So I know two options so far:
<ul>
<li>Use the builtin package manager to install code to support these boards</li>
<li>Use the Arch Linux / Parabola packages for that</li>
</ul>
<p>The advantage of the later is that it is patched to use Arch Linux packages like avrdude. In contrast the arduino-avr-code installed through the Arduino package manager pulls an avrdude binary for instance (and it more limited than the one build by Arch Linux).</p>
The Arch Linux packaged arduino-avr-core consist of source code that is copied as-is, but it also contains the following bootloaders binaries:
<ul>
<li>Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex</li>
<li>Arduino-COMBINED-dfu-usbserial-atmega16u2-MegaADK-Rev3.hex</li>
<li>Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex</li>
<li>Arduino-usbserial-atmega16u2-Mega2560-Rev3.hex</li>
<li>Arduino-usbserial-atmega16u2-MegaADK-Rev3.hex</li>
<li>Arduino-usbserial-atmega16u2-Uno-Rev3.hex</li>
<li>Arduino-usbserial-mega.hex</li>
<li>Arduino-usbserial-uno.hex</li>
<li>ATmegaBOOT_168_atmega1280.hex</li>
<li>ATmegaBOOT_168_atmega328_bt.hex</li>
<li>ATmegaBOOT_168_atmega328.hex</li>
<li>ATmegaBOOT_168_atmega328_pro_8MHz.hex</li>
<li>ATmegaBOOT_168_diecimila.hex</li>
<li>ATmegaBOOT_168.hex</li>
<li>ATmegaBOOT_168_ng.hex</li>
<li>ATmegaBOOT_168_pro_8MHz.hex</li>
<li>ATmegaBOOT.hex</li>
<li>ATmegaBOOT-prod-firmware-2009-11-07.hex</li>
<li>Caterina-Circuitplay32u4.hex</li>
<li>Caterina-Esplora.hex</li>
<li>Caterina-Industrial101.hex</li>
<li>Caterina-LeonardoEthernet.hex</li>
<li>Caterina-Leonardo.hex</li>
<li>Caterina-LilyPadUSB.hex</li>
<li>Caterina-LininoOne.hex</li>
<li>Caterina-Micro.hex</li>
<li>Caterina-Robot-Control.hex</li>
<li>Caterina-Robot-Motor.hex</li>
<li>Caterina-Yun.hex</li>
<li>Caterina-YunMini.hex</li>
<li>Caterina-Yun-noblink.hex</li>
<li>Esplora-prod-firmware-2012-12-10.hex</li>
<li>gemma_v1.hex</li>
<li>Genuino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-R3.hex</li>
<li>Genuino-COMBINED-dfu-usbserial-atmega16u2-Uno-R3.hex</li>
<li>Genuino-usbserial-atmega16u2-Mega2560-R3.hex</li>
<li>Genuino-usbserial-atmega16u2-Uno-R3.hex</li>
<li>Leonardo-prod-firmware-2012-04-26.hex</li>
<li>Leonardo-prod-firmware-2012-12-10.hex</li>
<li>LilyPadBOOT_168.hex</li>
<li>Mega2560-prod-firmware-2011-06-29.hex</li>
<li>MEGA-dfu_and_usbserial_combined.hex</li>
<li>Micro-prod-firmware-2012-11-23.hex</li>
<li>Micro-prod-firmware-2012-12-10.hex</li>
<li>optiboot_atmega168.hex</li>
<li>optiboot_atmega328.hex</li>
<li>optiboot_atmega328-Mini.hex</li>
<li>optiboot_atmega8.hex</li>
<li>stk500boot_v2_mega2560.hex</li>
<li>UNO-dfu_and_usbserial_combined.hex</li>
<li>wifi_dnld.hex</li>
<li>wifiHD.hex</li>
</ul>
<p>It doesn't seem to contain avrdude.</p>
<p>As the source code is also provided it's probably OK FSDG wise as long as the binaries match the source code. However there is a Parabola policy that requires to have everything built from source in the packages.</p>
So we have 2 options here that aren't mutually exclusive:
<ul>
<li>Remove all these bootloaders binaries (With rm -f)</li>
<li>Compile the bootloaders from source and replace the old binaries with the ones built.</li>
</ul>
<p>The bootloaders are also not needed for normal operation of the arduino program: they are just used to recover boards when the users erased the bootloader. So simply removing them will probably only break that functionality.</p> Packages - Bug #2803 (confirmed): Add patch from eschwartz to use system libs in iceweasel / icec...https://labs.parabola.nu/issues/28032020-06-12T22:02:40ZGNUtooGNUtoo@cyberdimension.orgUpstreaming Patches - Upstreaming #2802 (open): Add Parabola pacstrap support in Hyperbolahttps://labs.parabola.nu/issues/28022020-06-12T21:47:59ZGNUtooGNUtoo@cyberdimension.orgUpstreaming Patches - Upstreaming #2798 (fixed): Add or wait for the Pinephone support to arrive ...https://labs.parabola.nu/issues/27982020-06-12T20:44:33ZGNUtooGNUtoo@cyberdimension.orgUpstreaming Patches - Upstreaming #2796 (fixed): Add distro boot support for the TBS2910https://labs.parabola.nu/issues/27962020-06-12T20:00:55ZGNUtooGNUtoo@cyberdimension.orgPackages - Bug #2795 (confirmed): Add support for the TBS TBS2910 and finish the u-boot for I.MX ...https://labs.parabola.nu/issues/27952020-06-12T18:21:01ZGNUtooGNUtoo@cyberdimension.orgPackages - Feature Request #2578 (open): ARM: Add back GRUBhttps://labs.parabola.nu/issues/25782019-12-09T22:35:46ZGNUtooGNUtoo@cyberdimension.org
<p>On ARM, we currently use the standard distro booting scheme from u-boot:<br />- It tries boot.scr first<br />- It then try syslinux.cfg which is more familiar to people used to x86.</p>
<p>This can be improved to be even more by using grub which is even more familiar as most people are already using it on x86.</p> Packages - Bug #1866 (fixed): [arm] [linux-libre] /sys/class/udc now empty on am335xhttps://labs.parabola.nu/issues/18662018-07-03T00:26:46ZGNUtooGNUtoo@cyberdimension.org
<p>Hi,</p>
<p>On a beagle bone green, after a somewhat recent kernel update, /sys/class/udc is now empty and it's not possible to use the USB device port anymore.</p>
<p>Before the kernel upgrade it was like that:<br /><pre>
# ls /sys/class/udc/musb-hdrc.0/device/driver
bind musb-hdrc.0 musb-hdrc.1 uevent unbind
</pre></p>
<p>The BeagleBone green uses an am335x SOC.</p>
<p>Denis.</p> Ports - Bug #1553 (fixed): [ARM]: pacman -Su systemd segfault => non-booting systemhttps://labs.parabola.nu/issues/15532017-11-30T11:17:03ZGNUtooGNUtoo@cyberdimension.org
<p>Hi,</p>
<p>I recently upgraded my machine and I got that:<br /><pre>
# pacman -Su
:: Starting full system upgrade...
[...]
(28/40) upgrading systemd [#####################################] 100%
/tmp/alpm_NHb9SO/.INSTALL: line 13: 14267 Segmentation fault (core dumped) systemd-sysusers
</pre></p>
<p>I did it trough SSH, and at this point the machine (a beaglebone green) hanged.<br />I don't know if systemd itself (pid 1) did segfault, but if it did this would have created a kernel panic.</p>
<p>I later looked what happened with a serial console and /sbin/init was gone.</p>
<p>Reparation attempt:<br />Since I had an initramfs, I could chroot in the rootfs like that:<br /><pre>
# chroot /new_root
</pre><br />If you don't have a chroot, you can skip that as you are already in in your rootfs.</p>
<p>Then I mounted the required directories:<br /><pre>
# mount -t proc none /proc
# mount -t sysfs none /sys
# mount -t devtmpfs none /dev
</pre></p>
<p>As pacman didn't work either because some libraries were missing, I had to repair it too.<br />But before applying the upgrade, pacman checked the signatures.<br />Here's an example of a missing library<br /><pre>
# pacman
pacman: error while loading shared libraries: /usr/lib/libnghttp2.so.14: file too short
</pre><br />So here I had to find to what package "/usr/lib/libnghttp2.so.14" corresponded.<br />This can be done in a working parabola with:<br /><pre>
$ pacman -Q -o /usr/lib/libnghttp2*
/usr/lib/libnghttp2.so is owned by libnghttp2 1.23.1-1
/usr/lib/libnghttp2.so.14 is owned by libnghttp2 1.23.1-1
/usr/lib/libnghttp2.so.14.13.3 is owned by libnghttp2 1.23.1-1
</pre><br />or by guessing the name either by looking in /var/cache/pacman/pkg/</p>
<p>Then I added back the libraries like that:<br /><pre>
# cd $(mktemp -d)
# cp /var/cache/pacman/pkg/libnghttp2-1.27.0-1-armv7h.pkg.tar.xz
# tar xf libnghttp2-1.27.0-1-armv7h.pkg.tar.xz
# cp usr/lib/* /usr/lib/
</pre></p>
<p>After doing that for each missing libraries, I then re-installed them properly like that:<br /><pre>
# pacman --force -U /var/cache/pacman/pkg/libnghttp2-1.27.0-1-armv7h.pkg.tar.xz
</pre></p>
<p>I then installed systemd again. For each package in:<br /><pre>
# ls /var/cache/pacman/pkg/*systemd*
</pre><br />I installed it with pacman -U</p>
<p>Then while installing it it segfaulted again:<br /><pre>
# pacman -U /var/cache/pacman/pkg/systemd-235.38-2.parabola1-arm
loading packages...
warning: systemd-235.38-2.parabola1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Package (1) Old Version New Version Net Change
systemd 235.38-2.parabola1 235.38-2.parabola1 0.00 MiB
Total Installed Size: 18.07 MiB
Net Upgrade Size: 0.00 MiB
:: Proceed with installation? [Y/n]
(1/1) checking keys in keyring [######################] 100%
(1/1) checking package integrity [######################] 100%
(1/1) loading package files [######################] 100%
(1/1) checking for file conflicts [######################] 100%
(1/1) checking available disk space [######################] 100%
:: Processing package changes...
(1/1) reinstalling systemd [######################] 100%
/tmp/alpm_hYnttY/.INSTALL: line 13: 2122 Segmentation fault systemd-sysusers
/tmp/alpm_hYnttY/.INSTALL: line 13: 2123 Segmentation fault journalctl --update-catalog
:: Running post-transaction hooks...
(1/5) Updating linux-libre initcpios
==> Building image from preset: /etc/mkinitcpio.d/linux-libre.preset: 'default'
-> -k 4.13.11-gnu-1 -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-libre.img
==> Starting build: 4.13.11-gnu-1
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [autodetect]
find: 'sort' terminated by signal 13
modprobe: ERROR: missing parameters. See -h.
-> Running build hook: [modconf]
-> Running build hook: [block]
-> Running build hook: [lvm2]
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating xz-compressed initcpio image: /boot/initramfs-linux-libre.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux-libre.preset: 'fallback'
-> -k 4.13.11-gnu-1 -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-libre-fallback.img -S autodetect
==> Starting build: 4.13.11-gnu-1
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [modconf]
-> Running build hook: [block]
-> Running build hook: [lvm2]
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating xz-compressed initcpio image: /boot/initramfs-linux-libre-fallback.img
==> Image generation successful
(2/5) Updating udev hardware database...
error: command terminated by signal 11: Segmentation fault
(3/5) Updating system user accounts...
/bin/sh: line 1: 3941 Segmentation fault /usr/bin/systemd-sysusers "$(basename "$f")"
/bin/sh: line 1: 3944 Segmentation fault /usr/bin/systemd-sysusers "$(basename "$f")"
/bin/sh: line 1: 3947 Segmentation fault /usr/bin/systemd-sysusers "$(basename "$f")"
error: command failed to execute correctly
(4/5) Creating temporary files...
/bin/sh: line 1: 3951 Segmentation fault /usr/bin/systemd-tmpfiles --create "$(basename "$f")"
/bin/sh: line 1: 3954 Segmentation fault /usr/bin/systemd-tmpfiles --create "$(basename "$f")"
/bin/sh: line 1: 3957 Segmentation fault /usr/bin/systemd-tmpfiles --create "$(basename "$f")"
/bin/sh: line 1: 3960 Segmentation fault /usr/bin/systemd-tmpfiles --create "$(basename "$f")"
/bin/sh: line 1: 3963 Segmentation fault /usr/bin/systemd-tmpfiles --create "$(basename "$f")"
/bin/sh: line 1: 3966 Segmentation fault /usr/bin/systemd-tmpfiles --create "$(basename "$f")"
/bin/sh: line 1: 3969 Segmentation fault /usr/bin/systemd-tmpfiles --create "$(basename "$f")"
/bin/sh: line 1: 3972 Segmentation fault /usr/bin/systemd-tmpfiles --create "$(basename "$f")"
/bin/sh: line 1: 3975 Segmentation fault /usr/bin/systemd-tmpfiles --create "$(basename "$f")"
/bin/sh: line 1: 3978 Segmentation fault /usr/bin/systemd-tmpfiles --create "$(basename "$f")"
error: command failed to execute correctly
(5/5) Arming ConditionNeedsUpdate...
</pre></p>
<p>And then after rebooting:<br /><pre>
:: running cleanup hook [udev]
[ 17.732128] systemd[1]: System time before build time, advancing clock.
[ 17.796344] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 17.825391] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000008b
[ 17.825391]
[ 17.834595] CPU: 0 PID: 1 Comm: systemd Not tainted 4.13.11-gnu-1 #1
[ 17.840973] Hardware name: Generic AM33XX (Flattened Device Tree)
[ 17.847132] [<c0111124>] (unwind_backtrace) from [<c010c420>] (show_stack+0x10/0x14)
[ 17.854921] [<c010c420>] (show_stack) from [<c0b81d74>] (dump_stack+0x8c/0xa0)
[ 17.862183] [<c0b81d74>] (dump_stack) from [<c01429dc>] (panic+0xf0/0x27c)
[ 17.869096] [<c01429dc>] (panic) from [<c01469e0>] (complete_and_exit+0x0/0x1c)
[ 17.876442] [<c01469e0>] (complete_and_exit) from [<dc051e64>] (0xdc051e64)
[ 17.883457] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000008b
[ 17.883457]
[ 29.498812] random: crng init done
[ 62.434769] BUG: workqueue lockup - pool cpus=0 flags=0x4 nice=0 stuck for 43s!
[ 62.442144] Showing busy workqueues and worker pools:
[ 62.447231] workqueue events: flags=0x0
[ 62.451093] pwq 0: cpus=0 node=0 flags=0x0 nice=0 active=1/256
[ 62.457137] pending: vmstat_shepherd
[ 62.461111] workqueue events_power_efficient: flags=0x80
[ 62.466457] pwq 0: cpus=0 node=0 flags=0x0 nice=0 active=3/256
[ 62.472499] pending: neigh_periodic_work, do_cache_clean, neigh_periodic_work
[ 62.480063] workqueue mm_percpu_wq: flags=0x8
[ 62.484449] pwq 0: cpus=0 node=0 flags=0x0 nice=0 active=1/256
[ 62.490490] pending: vmstat_update
[ 62.494276] workqueue pm: flags=0x4
[ 62.497789] pwq 0: cpus=0 node=0 flags=0x0 nice=0 active=3/256
[ 62.503829] pending: pm_runtime_work, pm_runtime_work, pm_runtime_work
[ 62.510777] workqueue writeback: flags=0x4e
[ 62.514989] pwq 2: cpus=0 flags=0x4 nice=0 active=1/256
[ 62.520417] pending: wb_workfn
</pre></p> Ports - Porting #1252 (open): abs not working (+GPL issue?)https://labs.parabola.nu/issues/12522017-03-22T09:57:11ZGNUtooGNUtoo@cyberdimension.org
<p>Hi,</p>
<p>With the default config, I can't get the sources:</p>
<pre>
# uname -m
armv7l
# abs
==> ERROR: No mirrors found in mirrorlist file /etc/pacman.d/mirrorlist
</pre>
<p>In the default config /etc/pacman.d/mirrorlist is the same than on x86, I don't know if that information is relevant or not.</p>
<p>Denis.</p> Ports - Porting #1249 (fixed): Add support for the beaglebone greenhttps://labs.parabola.nu/issues/12492017-03-21T15:04:30ZGNUtooGNUtoo@cyberdimension.org
<p>The beaglebone green doesn't work out of the box:<br />Using the default beaglebone (black) u-boot image results in the beaglebone black dtb being loaded, which, at the end makes the Ethernet not work: <br />It can't properly negociate because it uses the generic PHY driver instead of the one for the "SMSC LAN8710/LAN8720" Ethernet PHY.</p>
<p>To make it work I did a very dirty workaround that only works because 'green' has the same number of characters than 'black' and that uboot didn't have checksums to check itself:<br /><pre>
cd /boot
sed s#am335x-boneblack#am335x-bonegreen#g -i u-boot.img
sed s#am335x-boneblack.dtb#am335x-bonegreen.dtb#g -i u-boot.img
dd if=MLO of=/dev/mmcblk1 count=1 seek=1 conv=notrunc bs=128k
dd if=u-boot.img of=/dev/mmcblk1 count=2 seek=1 conv=notrunc bs=384k
</pre></p>
<p>However I was pointed out that a patch might resolve the issue:<br /><a class="external" href="https://rcn-ee.com/repos/git/u-boot-patches/v2017.03/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch">https://rcn-ee.com/repos/git/u-boot-patches/v2017.03/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch</a></p>
<p>I don't have the time to test it right now, but I will later</p> Ports - Bug #1039 (open): ARM: architecture not autodetected properlyhttps://labs.parabola.nu/issues/10392016-06-21T19:30:18ZGNUtooGNUtoo@cyberdimension.org
<p>On my GTA04 which runs Parabola I have:<br /><pre>
# uname -m
armv7l
</pre></p>
<p>This seem to be picked by pacman, and I'm required to force the architectuer to armv7h in /etc/pacman.conf like that:<br /><pre>
Architecture = armv7h
</pre></p> Ports - Bug #1036 (in progress): Add more xf86-video"drivers".https://labs.parabola.nu/issues/10362016-06-21T19:17:53ZGNUtooGNUtoo@cyberdimension.org
<p>Hi,</p>
After installing Parabola on ARM, I'm left with only the following xf86-video- Xorg "drivers":
<ul>
<li>xf86-video-dummy: probably does nothing. Very useful to run headless Xorg applications.</li>
<li>xf86-video-fbdev: Would probably work, with no acceleration and with very few features(no rotation).</li>
<li>xf86-video-nouveau: Probably works on some Tegra.</li>
<li>xf86-video-sisusb: Probably requires USB host.</li>
<li>xf86-video-vesa: Probably useful for UEFI boot Fimrwares or coreboot on ARM.</li>
</ul>
<p>xf86-video-modesetting is also probably integrated in Xorg already, so that might be a working option too.</p>
<p>Upstream has all theses drivers (Look for "X.Org drivers" at <a class="external" href="https://cgit.freedesktop.org/">https://cgit.freedesktop.org/</a>):<br />xf86-video-amdgpu: same comment than xf86-video-ati below.<br />xf86-video-apm<br />xf86-video-ark<br />xf86-video-armsoc: Seem really useful: It seem to implement generic 2D acceleration on ARM.<br />xf86-video-ast<br />xf86-video-ati: Would be useful only if users of boards with exposed pcie connectors and an adapter that goes from pcie1x to pcie16x and plug an ATI GPU in it. They then would need to feed the video BIOS to the radeon kenrel driver,in order to initialize the display (it needs some bytecode that resides in that video BIOS).<br />xf86-video-chips<br />xf86-video-cirrus<br />xf86-video-cyrix<br />xf86-video-geode<br />xf86-video-glide<br />xf86-video-glint<br />xf86-video-i128<br />xf86-video-i740<br />xf86-video-impact<br />xf86-video-imstt<br />xf86-video-intel<br />xf86-video-mach64<br />xf86-video-mga<br />xf86-video-modesetting: should be included in some other Xorg package already.<br />xf86-video-neomagic<br />xf86-video-nested<br />xf86-video-newport<br />xf86-video-nsc<br />xf86-video-nv: deprecated<br />xf86-video-omap: We should package it, many OMAP have free software bootloader. However we should check if it works as expected as two omap video drivers are present in both Linux and Xorg. The xf86-video-omapfb driver that I knew had XV acceleration and supported multiple screens.<br />xf86-video-opentegra: I never tried it, tegras are interesting ARM platforms: Some of them can boot with 100% free software.<br />xf86-video-p690<br />xf86-video-qxl: We should also compile it, since people might want to try parabola-arm in emulators. We should also compile its kernel counterpart. Same applies for all implemented video cards in qemu. I hope that such cards are available on ARM too.<br />xf86-video-r128<br />xf86-video-radeonhd: deprecated radeon driver. As a side note, it might be interesting to look if it can work without the non-free firmwares.<br />xf86-video-rendition<br />xf86-video-s3<br />xf86-video-s3virge<br />xf86-video-savage<br />xf86-video-siliconmotion<br />xf86-video-sis<br />xf86-video-sunbw2<br />xf86-video-suncg14<br />xf86-video-suncg3<br />xf86-video-suncg6<br />xf86-video-sunffb<br />xf86-video-sunleo<br />xf86-video-suntcx<br />xf86-video-tdfx<br />xf86-video-tga<br />xf86-video-trident<br />xf86-video-tseng<br />xf86-video-v4l<br />xf86-video-vermilion<br />xf86-video-vga<br />xf86-video-via<br />xf86-video-vmware: same comment than xf86-video-qxl, it's supported by qemu and libvirt.<br />xf86-video-voodoo<br />xf86-video-wayland<br />xf86-video-wsfb<br />xf86-video-xgi<br />xf86-video-xgixp</p> Packages - Bug #887 (not-a-bug): "Any" architecturehttps://labs.parabola.nu/issues/8872015-12-10T12:04:26ZGNUtooGNUtoo@cyberdimension.org
<p>Hi,</p>
<p>it seems that arch has an architecture named "any" for architecture-independant packages.<br /><a class="external" href="https://www.archlinux.org/packages/?arch=any">https://www.archlinux.org/packages/?arch=any</a><br />We don't.</p>
<p>Is it an issue? Or is it me that uses stable repositories instead of the -testing ones?</p>
<p>Denis.</p>