Slackware - ARMThis forum is for the discussion of Slackware ARM.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Having acquired Asus C201 with Rockchip ARM, I hope to dual boot some brand of Linux. My preference would be Slackware, but I'm new to ARM and can find no compatibility postings.
From what I can find on the web, ubuntu and arch ARM distros should be able to run on the Rockchip, either under crouton or dual booted. Additionally, it looks like BIOS of C201 might be modified to run libreboot.
In short, I need some clues/advice to plan a slackware install on this machine. In return, I can promise a detailed howto of what worked for me. I am suspecting I may need to first install some other distro, and compile installable slackware from there.
I would try it but I have the xe303c12 chromebook series
I cannnot figure out a few things mplayer, sound confliction in firefox particularly youtubes, video ads, etc.
Other than that it works pretty good.
I find there are nooks and crannies to learn. But if you have any questions I could try to fill you in on my experience a bit better. though.
Still working on the plan to install on Asus C201.
I'm thinking I will re-use Chrome OS kernel and modules with a stock Slackware miniroot file-system. AFAICT Chrome uses a 3.x version kernel (modded for the C201 hardware).
If I am noticing correctly, the 14.2 release of Slackware features a 4.x version kernel, while the 14.1 release uses 3.x. Will it make sense, then, to try the 14.1 Slackware to avoid API issues? Or is this mostly a non-issue?
Also, does this overall approach make sense, or should I be trying to figure out how to roll my own kernel?
if the mainline kernel gets the sound and the camera to function I would learn that.
But the chrome kernel has those functions. I also don't know about the nfs since it doesnt seem to have anything loaded although they do have a way to activate it.
I do use the slackware current files with the chromeos kernel. And also have the fit image made for the slackware kernel.
And actually I just took the kernel from arch linux arm peach to use that. I don't think the ones I tried compiling myself worked at all. Though the slackware kernel did boot and I got to test that where nfs was functioning. It kinda took a lot of time and frustration and I'm glad I did it and over.
Posting this from Firefox inside blackbox on X11 from Slackware 14.1 running off SD card installation on Asus C201 (ARM veyron). I haven't yet worked out the sound, touchpad, hibernation, ...etc, but have solid video, (usb) mouse, keyboard, wifi, and browser.
Thank you sndwvs for the references. I must have read through them fifty times each.
Thank you slackartist for the tip to snag a kernel (and modules & firmware) from Arch arm distro. My attempt to flash the chrome os kernel left me booting into a classic blank screen, though logs indicated the machine was booting just fine into Slackware. The quick fix was to use the Arch kernel (build 3.14.0-21-ARCH).
I need to compile my notes into a detailed howto, but here is a TL;DR version...
1) Configure chromebook to run in developer mode, configure wifi, and use guest account (no google+ registration required).
2) Partition the SD card as root on chromebook console.
3) Download Slackware arm miniroot (I chose 14.1) into /tmp and unpack onto the SD root partition.
4) Download the Arch install filesystem for veyron and unpack it into an /opt/archroot/ path on the Slackware partition. Flash the kernel found at /opt/archroot/boot/ on the the SD kernel partition.
5) Chroot into the Slackware filesystem and symlink /opt/archroot/lib/modules to /lib/modules. Repeat for firmware. I also symlinked /boot, but that was only for reference.
6) Continuing in the chroot, add a user, a root password, a useful fstab & resolv.conf, and configure wifi.
7) Reboot the chromebook into Slackware (ctrl-U), get wifi and slackpkg working, and install a bunch of packages to get X11 functional, including driver "xf86-video-armsoc". Somewhere in Arch video packages I found the file "20-armsoc.conf" suitable to drop in /etc/X11/xorg.conf.d/.
8) Once X11 runs, install your preferred window system (I wanted to use fluxbox, but it didn't play nice with rxvt, so fell back to blackbox).
9) The Firefox in the .../unsupported/... branch of slackwarearm worked fine for me (once I installed all the dependent libs).
So now I have a two pound slackbook. Thanks again to all.
bricker_rick, do you think you could elaborate a little more on how you got it working? I'm confused about why you created the /opt/archroot directory and why you unpacked the arch arm rootfs in there.
When finally booting into Slackware with the Arch kernel, the kernel will be
looking for its associated (Arch) "firmware" and "modules". These must be
visible in the Slackware filesystem. My quick and dirty fix was to unpack the
whole Arch enchilada into a directory (/opt/archroot), and then (in step (5))
symlink the Arch directories accordingly. I have not got my notes on hand, but
from memory, step (5) would look something like this inside the Slackware
chroot:
cd /
mv boot boot.slackminiroot
ln -s /opt/archroot/boot boot
One could, with equal effect, simply copy the Arch directories we want into
place, and discard the other Arch files. I kept the whole filesystem intact
thinking I might raid it later if other files were of use. It turned out that I
did chroot into the Arch image from Slackware to refer to some manpages that
were unavailable in the Slackware miniroot.
[Side Note:/boot is not actually used by the chromebook booting system - rather
the kernel is flashed into its own private partition - maybe something like
/dev/mmcblk1p1.]
</Answer>
Since last I posted, I have continued to build out the miniroot into a
full-fledged Slackware install. Sound, touchpad, headphones, backlight-adjust
and suspend are working fine. I haven't yet attempted to use HDMI, microphone,
video-camera, or LAN-via-usb. I did go ahead and revise the SSD
partitioning (see web for installing linux on chromebook SSD) and move the
Slackware root onto an 8G partition there. The kernel is still presently
on the first partition of the SD card. The rest of the SD card is mounted on
/opt1 for workspace.
KDE is installed, though I am using the Xfce window manager. A glitch in Xfce
is that xfwm4 fails to draw the window titlebar/borders (although the window
controls are operational if you remember where they should be). Just today, I
managed to switch to using KWin in place of xfwm4 on the Xfce desktop, and the
windows render properly. All of the KDE apps seem to work. YouTube videos play
okay in firefox, but have jumpy video when taken fullscreen (this is no gaming
machine).
I found the following downloadable packages in various places on the web which
seem to work on this franken-install:
To get Audacity to play my mp3 files, I did need to recompile mpg123 with patch
to the (arm) mpg123.SlackBuild file:
56,57c56
+ #TARGET="arm_nofpu"
+ TARGET="generic_fpu"
---
- TARGET="arm_nofpu"
Still TO-DO: get LibreOffice working (build fails so far), get MPlayer working,
sort out Hibernation, install or build a chromium-browser, Wine, Qemu,
audio-recording stuff,...etc.
All-in-all, though, I love the form-factor and feature-set of the C201, and as
always, once properly configured, Slackware is remarkably capable and stable.
@bricker_rick, I see. I decided to just copy the modules and firmware directories on to my Slackware partition. It seems to work find! Thanks for the explanation!
@bricker_rick, I finally have some time to actually attempt this again and I'm stuck at X11. It doesn't seem to recognize the screen. Did you have to manually configure X to get it to work properly? If not, is there a package that I may have missed? Thanks!
Last edited by NuclearKev; 03-31-2017 at 10:39 AM.
Reason: Grammar
on my arm system it has all the packages, and around 1 g free give or take, though its not the best way but sort of functional so far just rebuilding a package (im pretty new to rebuilding at times)
but what I did if I could find my list, I took a mirror of the slacwkare then i installed most packages locally as full install just like the installer would have.
though i see how arch linux is and there its super bare and such but this kind of got my laptop banging pretty quick
all right i was taking off the version numbers and was thinking aboutall the packages haha
@NuclearKev, glad you managed to get X working. Checking my system's
/etc/X11/xorg.conf.d, I made a link
xorg.conf -> 20-armsoc.conf
which is the file I mentioned in my previous post (I forget where I got it).
I continue to use the Asus machine, although I have also acquired a 2013
Google Chromebook Pixel machine which takes most of my attention now.
Additional things of note about the C201
1) I was able to find and employ the kernel source 3.14 that matched the Arch
kernel and have been able to compile stuff that needed those headers and
also some modules I needed. My bookmark history shows...
2) Referring to the studioware.org site, I managed to get a bunch of audio
programs compiled and working including Jack, Ardour, Rosegarden, Hydrogen,
Alsaplayer, and Qsynth. I had to hack the build scripts to build for ARM.
Not sure I recommend this though, since the C201 is rather underpowered for
an audio workstation, and I have not found the magic combination to get
clean recordings consistently (without xruns in Jack).
3) The built-in microphone works well, however I am unable to get the
headset microphone to work. I saw some kernel posts indicating that this
was a bug in the audio driver that was not fixed in the 3.14 kernel. The
fix would require building a new kernel, which I have no heart for. Refer to:
4) After heroic efforts, I almost got libreoffice to compile. It finished well
enough to hack together a workable installation, but I do not recommend any but
an expert to attempt such.
5) Managed to get suspend working, but was unable to sort out the glitches with
sound and video which would ultimately force a reboot. Have resorted to leaving
it always on - current uptime is 33 days.
OBTW my previous post should read "To get Audacious to play..." - not Audacity.
@bricker_rick, thanks for all your work you've put into the project! I am having an issue with slackbuilds, however. I get an error about /lib/cpp failing sanity check. I can't seem to figure out what is missing!
UPDATE: I fixed it! Turns out it was looking for a directory that didn't exist. I had to symlink /usr/include/limits.h into /usr/include/linux/limits.h!!
Last edited by NuclearKev; 04-01-2017 at 12:45 PM.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.