this post was submitted on 17 Oct 2023
27 points (90.9% liked)

Linux

48061 readers
699 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Hi Linux- how important is it to install, say Debian, the version that is specifically made for your hardware? For example, if I have a Rock64 SBC, do I have to install Debian-rock64.img or can I just go with Debian-arm64.img? Will I lose performance/features if using generic arm64 image, or conversely, will I gain performance/features if using the image made for my specific SBC? Is the generic image even compatible with all hardwares?

Thank you.

top 15 comments
sorted by: hot top controversial new old
[–] [email protected] 17 points 1 year ago

The rock64 version likely is the same, except for boot loader stuff. Often times these SBC's require custom boot software, firmware, or configuration. The rest of the distro should be straight up debian.

[–] [email protected] 12 points 1 year ago (1 children)

This link here was on the Pine64's Rock64 software wiki page

https://deb.debian.org/debian/dists/bullseye/main/installer-arm64/current/images/netboot/SD-card-images/README.concatenateable_images

It seems like it comes down to better firmware support out of the box.

[–] [email protected] 2 points 1 year ago (2 children)

Thank you! So if it's about firmware, then using a generic image might lead to critical components not working, or the entire system not working, right? I'm wondering about the general concept.

[–] [email protected] 4 points 1 year ago

then using a generic image might lead to critical components not working, or the entire system not working, right?

Yes, that's why you should either use manufacturer images or Armbian (https://lemmy.world/comment/4609514). Generic images might also underperform in your board, the GPIO and other low level components will, most likely, not work and you might burn your storage as logging and other I/O intensive operations aren't tweaked for SD/eMMC.

[–] [email protected] 1 points 1 year ago

I don't know enough to say. I've used the wrong images in the past and I want to say I had some issues with things like display brightness controls and minor things. I think it still ran fine

[–] [email protected] 8 points 1 year ago* (last edited 1 year ago)

Checkout https://www.armbian.com/rock64/

Run Armbian, it is Debian optimized for SBCs, that one specifically for your board. Armbian has a very good track record and sometimes is the only option after manufacturers stop creating images for their old boards.

Generic images might underperform in your board, the GPIO and other low level components will, most likely, not work and you might burn your storage as logging and other I/O intensive operations aren’t tweaked for SD/eMMC. Armbian aims to fix all those issues and provides continuous system and kernel updates long after the manufacturer stops doing so.

To be fair I don't trust whatever a Chinese SBC manufacturer ships for their own boards, how much spyware / calling home that will include? How messed up and mangled the kernel and the OS is? You can eventually run into issues when you least expect it.

[–] [email protected] 4 points 1 year ago

I’m no expert so take what I say with a grain of salt. You might be able to get it to work on your hardware even if it’s not the recommended version. Having said that you’ll most likely run into issues in some way or another (e.g performance/weird bugs)

[–] [email protected] 3 points 1 year ago* (last edited 1 year ago) (1 children)
  1. Does your board support UEFI? Have you flashed it, if necessary? If not, your only option is board-specific image with board-specific U-Boot. Still, you may have some luck with mainline kernel after you flash that image.
  2. Assuming you've flashed UEFI and know how to work with it, you should IMO install mainline images whenever possible, as those will always have the Linux kernel with latest security patches (you shouldn't use LTS kernel before you've verified the very latest kernel version, unless your board is like 10 years old)
  3. However, mainline Linux is often missing certain features on certain boards. In that case, you may have to either load some dtb/.dtbo files (it's a way to specify hardware information at boot time), or, worst case, compile your own kernel with certain patches pulled from developers working on mainlining your board
  4. If you don't want to deal with all that, you can use premade images for your board. They will typically have an old kernel, but nonetheless it should Just Work™. You may still have to pick some .dtbs manually if your hardware is configurable enough (e.g. BPI-R3 has SD/EMMC switch, you can't use both at the same time, and you have to pick the specific .dtb file depending on what you use)
[–] [email protected] 1 points 1 year ago

Thanks that was very informative.

[–] [email protected] 1 points 1 year ago (1 children)

@bartolomeo if you want it to just work, you should consider installing Armbian. I ran Armbian for a couple of years on my Rock64 and it was very stable

[–] [email protected] 1 points 1 year ago

Thanks yea I am running armbian but i wanted to know a little more about how architecture affects OS. Isn't armbian just run by 1 guy though?

[–] [email protected] 0 points 1 year ago (1 children)
[–] [email protected] 1 points 1 year ago

Lol i will thank you NOW! Thank you.

[–] [email protected] 0 points 1 year ago* (last edited 1 year ago) (1 children)

It seems that Debian-rock64.img is an armhf image (i.e 32 bits) and Debian-arm64.img is (obviously) an 64 bit image... so go for the latter if your board has 8 GiB ram and up and the former if 4 GiB ram and under.

[–] [email protected] 0 points 1 year ago

Rock64 had 4GB max