• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

Linux on the Acer Iconia Tab A500, 2020 edition

Search This thread

Baonks81

Member
Aug 8, 2020
37
11
Ever since this device is officially supported by postmarketOS, I use their prebuilt packages for all the images. When a newer version is packaged by them, I'll test to see if USB-OTG works. However, I can check to see if 5.14.0-rc1 already has USB-OTG support - and USB-OTG doesn't work with this version. It's okay, because I have a USB-A port instead I can use!
I've actually been considering creating more images based on other distros, as long as they have ARM versions available. I'm just stuck on which desktop environment should come preinstalled on these images. If I were doing it, I would be doing ones based off of major distros first, latest versions to be used, including:
  • Debian 10 or 11
  • Fedora 34
  • Gentoo (source-based distibution; compilation may be slow)
  • openSUSE Leap 15.3
  • Slackware 15.0 (once released) or current
I tested grate-driver 3D accelerate mesa packages on launchpad.net. It had partial work on Ubuntu MATE 20.04.1 LTS, es2gears run good, glmark2-es2 still has black-screen. Here is my video:

 
  • Like
Reactions: Worldblender

B83C

Member
Dec 7, 2020
28
4
Behind you
Asus ZenFone 2
Anyone tried installing it on emmc? The fastboot I am using (Skrilax_CZ's V9) is rather buggy. I kept getting this while doing the command ' pmbootstrap flasher flash_kernel --partition secboot '
output:
b83c~/builds/pmbootstrap/ppp pmbootstrap flasher flash_kernel --partition secboot [14:45:29] Update package index for armv7 (4 file(s)) [14:45:51] Update package index for x86_64 (4 file(s)) [14:46:06] (rootfs_acer-picasso) mkinitfs postmarketos-grate [14:47:34] (native) flash kernel postmarketos-grate couldn't parse max-download-size 'ؼ#' Sending 'secboot' (6344 KB) OKAY [ 0.734s] Writing 'secboot' OKAY [ 0.981s] Finished. Total time: 2.160s

neither was ' pmbootstrap flasher flash_rootfs ' working
output:
b83c~/builds/pmbootstrap/ppp pmbootstrap flasher flash_rootfs [14:53:13] (native) flash rootfs image couldn't parse max-download-size '0002e034' Sending 'system' (642048 KB) OKAY [ 56.007s] Writing 'system' FAILED (remote: '(00030003)') fastboot: error: Command failed [14:54:26] NOTE: The failed command's output is above the ^^^ line in the log file: /home/b83c/.loc ootstrap/log.txt [14:54:26] ERROR: Command failed: (native) % fastboot flash system /home/pmos/rootfs/acer-picasso.i [14:54:26] See also: <https://postmarketos.org/troubleshooting> Run 'pmbootstrap log' for details.

Would someone mind guiding me through this?
 

Baonks81

Member
Aug 8, 2020
37
11
Anyone tried installing it on emmc? The fastboot I am using (Skrilax_CZ's V9) is rather buggy. I kept getting this while doing the command ' pmbootstrap flasher flash_kernel --partition secboot '
output:
b83c~/builds/pmbootstrap/ppp pmbootstrap flasher flash_kernel --partition secboot [14:45:29] Update package index for armv7 (4 file(s)) [14:45:51] Update package index for x86_64 (4 file(s)) [14:46:06] (rootfs_acer-picasso) mkinitfs postmarketos-grate [14:47:34] (native) flash kernel postmarketos-grate couldn't parse max-download-size 'ؼ#' Sending 'secboot' (6344 KB) OKAY [ 0.734s] Writing 'secboot' OKAY [ 0.981s] Finished. Total time: 2.160s

neither was ' pmbootstrap flasher flash_rootfs ' working
output:
b83c~/builds/pmbootstrap/ppp pmbootstrap flasher flash_rootfs [14:53:13] (native) flash rootfs image couldn't parse max-download-size '0002e034' Sending 'system' (642048 KB) OKAY [ 56.007s] Writing 'system' FAILED (remote: '(00030003)') fastboot: error: Command failed [14:54:26] NOTE: The failed command's output is above the ^^^ line in the log file: /home/b83c/.loc ootstrap/log.txt [14:54:26] ERROR: Command failed: (native) % fastboot flash system /home/pmos/rootfs/acer-picasso.i [14:54:26] See also: <https://postmarketos.org/troubleshooting> Run 'pmbootstrap log' for details.

Would someone mind guiding me through this?
I saw the boot and rootfs image size did not matching with eMMC size(secboot partition and system partition)

when you finished built kernel and pmOS_rootfs, export it to /tmp

pmbootstrap export

then try:

fastboot flash secboot boot.img

because of fasboot flash boot partition only, you want to try flash secboot partition

for flash rootfs, please try in twrp, Advance -> Terminal

df

umount /dev/block/mmcblk0p--- (with --- is number of data partition with df command)
 

B83C

Member
Dec 7, 2020
28
4
Behind you
Asus ZenFone 2
I saw the boot and rootfs image size did not matching with eMMC size(secboot partition and system partition)

when you finished built kernel and pmOS_rootfs, export it to /tmp

pmbootstrap export

then try:

fastboot flash secboot boot.img

because of fasboot flash boot partition only, you want to try flash secboot partition

for flash rootfs, please try in twrp, Advance -> Terminal

df

umount /dev/block/mmcblk0p--- (with --- is number of data partition with df command)
Thanks for the reply but I got it working yesterday by simply flashing the rootfs onto the userdata partition with the kernel on boot (lnx)

Anyway, what is the recommended browser to use on this machine? Most of the modern browsers I tried can neither be found nor used. But at least w3m is working :/
 
Last edited:
  • Like
Reactions: Baonks81

Baonks81

Member
Aug 8, 2020
37
11
Thanks for the reply but I got it working yesterday by simply flashing the rootfs onto the userdata partition with the kernel on boot (lnx)

Anyway, what is the recommended browser to use on this machine? Most of the modern browsers I tried can neither be found nor used. But at least w3m is working :/
I'm using firefox 90.0.2-r0 and midori or netsurf

sudo apk add firefox midori netsurf

I read on grate-driver which chromium-browser work but I tested to install chromium-browser 85 failed on ubuntu mate 20.04.1 lts ;)
 

Worldblender

Member
Feb 17, 2015
46
39
Moto G Power
@Worldblender is it possible to flash another distro right onto the emmc without sdcard?
It is possible to install to the eMMC onto one of the partitions, but care must be taken, as it is possible to alter the partition layout such that Android ROMs cannot be installed without reflashing an OEM image. An installer image such as the Debian installer ones can help. In addition, the boot image is hard-coded to search for partitions named 'pmOS_boot' and pmOS_root',

I'm using firefox 90.0.2-r0 and midori or netsurf

sudo apk add firefox midori netsurf

I read on grate-driver which chromium-browser work but I tested to install chromium-browser 85 failed on ubuntu mate 20.04.1 lts ;)
I have never gotten Firefox to work before, as the Tegra 2 CPU lacks NEON, causing it to crash. Chromium may still work, but by now its performance will not be good, despite that it does support touch gestures. I have the following browsers installed for my use:
  • Falkon (formerly Qupzilla, changed name after becoming a KDE project)
  • Konqueror (dual-purpose file manager and web browser)
  • Epiphany (also known as GNOME Web)
  • Midori
  • Netsurf
It's possible to get certain Qt programs running after exporting some environment variables found in one of my previous posts. It basically involves telling them to use software rendering instead of GPU rendering. Though performance may slightly suffer, this will allow them to run at all.
 
  • Like
Reactions: Baonks81

B83C

Member
Dec 7, 2020
28
4
Behind you
Asus ZenFone 2
Alright, just got your arch image run on the emmc.
What I did was:
Adding another partition to the partition table and installing the boot partition on it. Having done so, I then had the arch rootfs along with the embedded boot partition written onto another partition by means of nvflash ( specifying in the cfg )
And viola it works without having to muck around with the partition label ( which I did with my own installation. It worked partially but not for the rootfs, just couldn't reason it out... ) since the label already existed within the image

Edit: the internet is slow tho, it never gets beyond 100kbps

Edit: I tried copying the void rootfs( musl & gnu ) into the pmOS_root partition but the thing just doesnt boot properly ( instead it shuts down after loading the roots )
 
Last edited:

Baonks81

Member
Aug 8, 2020
37
11
It is possible to install to the eMMC onto one of the partitions, but care must be taken, as it is possible to alter the partition layout such that Android ROMs cannot be installed without reflashing an OEM image. An installer image such as the Debian installer ones can help. In addition, the boot image is hard-coded to search for partitions named 'pmOS_boot' and pmOS_root',


I have never gotten Firefox to work before, as the Tegra 2 CPU lacks NEON, causing it to crash. Chromium may still work, but by now its performance will not be good, despite that it does support touch gestures. I have the following browsers installed for my use:
  • Falkon (formerly Qupzilla, changed name after becoming a KDE project)
  • Konqueror (dual-purpose file manager and web browser)
  • Epiphany (also known as GNOME Web)
  • Midori
  • Netsurf
It's possible to get certain Qt programs running after exporting some environment variables found in one of my previous posts. It basically involves telling them to use software rendering instead of GPU rendering. Though performance may slightly suffer, this will allow them to run at all.
I used Android virtual memory and ktweak config. And I used Ondemand governor. Firefox 90 run smoothly, not firefox-esr 78. It run slowly sometime
 

Worldblender

Member
Feb 17, 2015
46
39
Moto G Power
I used Android virtual memory and ktweak config. And I used Ondemand governor. Firefox 90 run smoothly, not firefox-esr 78. It run slowly sometime
I just tried running Firefox today. It fails with an "illegal instruction" message when run from a terminal. You might be using something that has a Tegra 3 CPU, which does have the NEON instructions. It doesn't matter, since it would run very slow on my tablet anyways.
 
  • Like
Reactions: Baonks81

Baonks81

Member
Aug 8, 2020
37
11
I just tried running Firefox today. It fails with an "illegal instruction" message when run from a terminal. You might be using something that has a Tegra 3 CPU, which does have the NEON instructions. It doesn't matter, since it would run very slow on my tablet anyways.
DIY. Try this ktweak latency branch with virtual memory and kernel parameters

I failed run firefox but when I try edit sysctl.conf and cpufreqs. Firefox work again, I think it optimize freq speed and gpu draw

Add this line in firefox profiles, pref.js

pref('general.config.sandbox_enabled', false);

 
Last edited:

Worldblender

Member
Feb 17, 2015
46
39
Moto G Power
DIY. Try this ktweak latency branch with virtual memory and kernel parameters

I failed run firefox but when I try edit sysctl.conf and cpufreqs. Firefox work again, I think it optimize freq speed and gpu draw

Add this line in firefox profiles, pref.js

pref('general.config.sandbox_enabled', false);

I tried it today, and that didn't solve anything about me being unable to run Firefox at all. Really, Firefox 57 and newer are compiled with mandatory usage of NEON instructions for ARM architectures, and nothing software-wise can allow me to run more recent Firefox versions. Really, I only have a few options if I still want to run Firefox:
  • Replace my Acer Iconia Tab A500 with a newer hardware tablet.
  • Stay on Firefox 56, which is the last pre-Quantum version, but which doesn't receive security updates.
  • Switch to a pre-Quantum Firefox fork, such as Pale Moon.
The Tegra 2 CPU was affected by planned obsolescence from Nvidia from the start: by not including NEON instructions until Tegra 3, it is one of many cases that forces people to buy newer hardware once the majority of mainstream software stopped supporting it.
 
  • Like
Reactions: B83C and Baonks81

Zarosky

Senior Member
Sep 5, 2016
119
33
Buenos Aires
I saw the boot and rootfs image size did not matching with eMMC size(secboot partition and system partition)

when you finished built kernel and pmOS_rootfs, export it to /tmp

pmbootstrap export

then try:

fastboot flash secboot boot.img

because of fasboot flash boot partition only, you want to try flash secboot partition

for flash rootfs, please try in twrp, Advance -> Terminal

df

umount /dev/block/mmcblk0p--- (with --- is number of data partition with df command)
$ sudo adb push /tmp/postmarketOS-export/acer-picasso.img /dev/block/mmcblk0p8
adb: error: failed to copy '/tmp/postmarketOS-export/acer-picasso.img' to '/dev/block/mmcblk0p8': remote No space left on device
/tmp/postmarketOS-export/acer-picasso....1.3 MB/s (382140416 bytes in 278.703s)

how can I do to get the partition in, it says I don't have space?
 
  • Like
Reactions: Baonks81

Baonks81

Member
Aug 8, 2020
37
11
$ sudo adb push /tmp/postmarketOS-export/acer-picasso.img /dev/block/mmcblk0p8
adb: error: failed to copy '/tmp/postmarketOS-export/acer-picasso.img' to '/dev/block/mmcblk0p8': remote No space left on device
/tmp/postmarketOS-export/acer-picasso....1.3 MB/s (382140416 bytes in 278.703s)

how can I do to get the partition in, it says I don't have space?

TWRP -> Andvance -> Terminal

# df

if mmcblk0p8 is userdata partition, it had more space

# umount /dev/block/mmcblk0p8 (2 times)

Then back PC/latop:

# adb push /tmp/postmarketOS-export/acer-picasso.img /dev/block/mmcblk0p8

If it failed again, check your usb cable, i think 1.0 -> 2.0 support
 
  • Like
Reactions: Zarosky

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    I have tried the Ubuntu Mate image on 2 different sd cards and each time it gets to configuring system locales and the installer crashes. Can't login using the username and password I chose. Have tried connecting to wifi or not. Any thoughts?
  • 3
    I have become successful with getting postmarketOS to run on this tablet for the past 2 months, running mainline Linux (5.8.0 as of this writing). This allows us to use this tablet model for a little longer, without getting stuck on older Linux kernel versions.
    postmarketOS is an experimental, touch-optimized and pre-configured Alpine Linux. It can be installed on smartphones and other devices.

    About postmarketOS, from their homepage:
    We are sick of not receiving updates shortly after buying new phones. Sick of the walled gardens deeply integrated into Android and iOS. That's why we are developing a sustainable, privacy and security focused free software mobile OS that is modeled after traditional Linux distributions. With privilege separation in mind. Let's keep our devices useful and safe until they physically break!

    Wiki page for this tablet: https://wiki.postmarketos.org/wiki/Acer_Iconia_Tab_A500_(acer-picasso)
    Most features should work, except for the camera and 3D acceleration. Wi-Fi and Bluetooth work only if the non-free firmware is chosen to be installed.

    How to install:
    Follow the installation guide at https://wiki.postmarketos.org/wiki/Installation_guide, where theses specifics have to be specified when requested (this device is now in upstream pmaports):
    • Vendor: acer
    • Device code-name: picasso
    • Install non-free Wi-Fi + Bluetooth firmware: y
    Only the mainline kernel is available for installation now, as downstream kernels no longer successfully compile. The user interface may be freely selected, as long as it is not one that requires 3D acceleration. To use KDE Plasma 5, add these lines to /etc/security/pam_env.conf:
    Code:
    QT_IM_MODULE=qtvirtualkeyboard
    QT_QUICK_BACKEND=software
    LIBGL_ALWAYS_SOFTWARE=1

    Next, run the following commands in succession, after each one finishes, assuming the working directory contains the pmbootstrap.py script:
    Code:
    > ./pmbootstrap.py build device-acer-picasso
    > ./pmbootstrap.py build firmware-acer-picasso
    > ./pmbootstrap.py build linux-postmarketos-grate

    From here on out, the generated chroot can be either installed to the eMMC, or a microSD card that must be inserted at or before boot time (the latter method allows for dual-booting Android already installed to the eMMC, although it can be directly accessed from the Linux system). The boot partition always has to be flashed to the eMMC in fastboot mode, as it is not possible to boot directly off of a microSD card.
    If installing to the eMMC, run
    Code:
    > ./pmbootstrap.py install
    > ./pmbootstrap.py flasher flash_kernel --partition secboot
    > ./pmbootstrap.py flasher flash_rootfs
    (optional) > ./pmbootstrap.py flasher boot
    If installing to a microSD card, run
    Code:
    > ./pmbootstrap.py install --sdcard [path to the device for installation]
    > ./pmbootstrap.py flasher flash_kernel --partition secboot

    Depending on what user interface was chosen earlier in the installation process, there may not be enough packages installed to get a fully-loaded GUI. Besides the built-in Wi-Fi, it is also possible to use a USB ethernet adapter, or connect to another computer with a micro-USB cable and get RNDIS access that enables using SSH to the tablet.
    3
    Using another distro in place of postmarketOS

    Advanced: Using another distro in place of postmarketOS
    It is possible, if using the microSD card method, to use a different distro instead of postmarketOS, for those who want more software OOTB. I use the Ubuntu MATE rootfs from https://ubuntu-mate.org/ports/raspberry-pi/ as my daily driver, but other distros may take more effort to get working. Glibc limitations no longer apply, as the kernel version is no longer stuck at 3.1.0 (unlike with my earlier attempts). Carefully follow the instructions listed below, or the resulting system will become unbootable:
    1. Use losetup or GNOME Disks (Utility) to mount the image in read-write mode.
    2. Run GParted with the loop image and the target microSD card as the arguments.
    3. Copy only the larger rootfs partition to the microSD card. Resize as necessary to get it to fit on the target microSD card.
    4. Make sure on the target microSD card the boot partition is named 'pmOS_boot' and the rootfs 'pmOS_root'. The initramfs is hard-coded to search for partitions with these names by default for microSD cards. The loop image is not needed after this point, and can be safely detached.
    5. On the copied rootfs, edit /etc/fstab to reflect the partition layout. To get access to Wi-Fi and Bluetooth, copy the kernel modules and firmware from the pmOS rootfs on the host system to the microSD rootfs.
    Let me know if something wasn't understood from my instructions, or more clarification is needed. The instructions here can be somewhat overwhelming for those who have less Linux experience, but at least we're not forced to stay on old distro versions anymore.
    3
    Premade Linux images

    I finally have managed to create a premade image to make the installation process easier for other people, especially for those who don't want to go through the hassle of compiling software. Every image I make can be found at https://drive.google.com/drive/folders/1pMqaS5GaM6N9TAKlNGQZWCG8UTiRn4pK?usp=sharing.

    For all images:
    • Kernel version: 5.14.0-rc1
    • Includes all compiled kernel modules from postmarketOS builds, plus nonfree firmware enabled.
    • The postmarketOS splash screen will appear, although the underlying OS differs based the image used.

    Images available:
    • Ubuntu MATE 20.04.1 (ubuntu-mate-20.04.1-desktop-armhf+acer-picasso.img.xz) (size: 1.3 GiB):
      • Based on 'ubuntu-mate-20.04.1-desktop-armhf+raspi.img.xz', available from https://ubuntu-mate.org/ports/raspberry-pi/
      • Underlying OS is Ubuntu 20.04.1, which is supported for 5 years until April 2025. However, Ubuntu MATE officially has support only until April 2023.
      • Requires at least an 8 GB or greater size microSD card (the image is 5.6 GiB decompressed).
      • The setup screen will open upon the first successful boot, where a username and password have to be set.
      • Most extra packages for the Raspberry Pi family of computers have been removed, including the kernels.
      • The battery icon in MATE cannot be enabled graphically, as the preferences window has been patched to permanently hide such an option (as the Raspberry Pis lack native battery support); instead run the command
        Code:
        gsettings set org.mate.power-manager icon-policy 'always'
        to manually enable it.
      • The PPA at https://launchpad.net/~grate-driver/+archive/ubuntu/ppa is pre-configured to be accessed. Most packages from this repository, including the opentegra driver, come preinstalled. They currently are enough to get 2D acceleration working, but not for 3D acceleration.
      • Except for what has been mentioned above, any packages shipped may have to be updated once an internet connection is established.
    • Arch Linux ARM (ArchLinuxARM-armv7-latest+acer-picasso.img.xz) (size: 598.8 MiB):
      • Based on 'ArchLinuxARM-armv7-latest.tar.gz', available from https://archlinuxarm.org/about/downloads
      • Rolling release distro often with the latest versions of most packages. More recent software can be acquired at a small expense of instability.
      • Requires at least an 2 GB or greater size microSD card (the image is 1.9 GiB decompressed). Larger size is recommended for installing more packages.
      • To login into system:
        • Login as the default user alarm with the password alarm.
        • The default root password is root.
      • Initially command-line only; contains no desktop environment installed.
    Use any image writing program with these images. If such a program does not support XZ compression, the image needs to be extracted instead, and that has to be used.
    I hope the images will proves useful to some people. Let me know if any issue pops up during usage of this image!
    2
    I released a new version of the premade Ubuntu MATE image just now, named 'ubuntu-mate-20.04.1-desktop-armhf+acer-picasso.img.xz'. The following changes have been made since the last image:
    • Kernel version upgraded to 5.10.1-rc1
    • Based on Ubuntu MATE 20.04.1
    • Everything that changed since the beta1 image
    Other than these changes, there are no other differences that can be noticed right away.
    Direct link: https://drive.google.com/file/d/1mr-7e29KJYeagJju0Yo1qUpT2YRb61AR/view?usp=sharing
    2
    Many thanks for your work. I've entered today this forum just curious about something new and found this!
    Second life for this old machine!

    For those with problems installing, I've flashed precompiled image using balenaEtcher into the sdcard.
    Then, extracted .xz image, extracted .img, then extracted 0.img and copied boot file from there. After that, renamed the file to boot.img and flashed it with fastboot.
    As I've the old modified skrillex bootloader, the command is fastboot flash secboot boot.img.

    It boots and works well for now!