Skip to content
 
 

Latest commit

 

History

503 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to dArkOS

Debian based version of the ArkOS operating system for select RK3326 and RK3566 based portable gaming devices.

Donate

The overarching goals of dArkOS is as follows:

  1. Highly customizable
  2. Performance
  3. Online Updates (Won't require SD card reflashing unless there are major structural changes like file system changes.)
  4. Enthusiats focused

This is intended to continue the work from ArkOS but in a way that allows others to easily fork and modify the OS to their own taste. If there's a feature not currently available that you want, you can fork this and add it yourself. Don't feel like building the OS from scratch or don't have the resources to do so? Ok, just download one of the available prebuilt images and make changes right in the OS. Since this OS is based on the latest stable version of Debian, you have access to over 64,000 packages you can install via the Debian Advanced Package Tool (APT). Want to build the latest testing or bleeding edge release of Debian? See the notes below on how to accomplish this.

Building instructions:

  • Suggested Environment - Ubuntu or related variants, version 24.04 or newer. Windows Subsystem for Linux (WSL) is not supported and will not work due to no support for chroot.
    Because chroot is used in this process, heavy use of sudo is made. To reduce the possibility of priviledge issues,
    it's best to be able to execute sudo without needing a password. This can be done using one of the 2 methods below.
    • Method 1: - Open a Terminal window and type sudo visudo
      In the bottom of the file, add the following line: $USER ALL=(ALL) NOPASSWD: ALL
      Where $USER is your username on your system. Save and close the sudoers file (if you haven't changed your
      default terminal editor (you'll know if you have), press Ctl + x to exit nano and it'll prompt you to save).
    • Method 2: - Clone this git repo then run ./FreeSudo.sh. If there were no errors, it should've completed this change for you.
      You can verify this by checking if a /etc/sudoers.d/$USER file exists and contains $USER ALL=(ALL) NOPASSWD: ALL in it.

Now you should be able to just run make <device_name> to build for a supported device. Example: make rg353m

Notes

  • To build on a different release of Debian, change the DEBIAN_CODE_NAME export in the Makefile or add DEBIAN_CODE_NAME= as a variable to make. Other debian code names can be found at https://www.debian.org/releases/
  • By default, this will build with both a 64bit and 32bit userspace. This is primarily to support some 32bit ports available through PortMaster. There are also some 32bit retroarch emulators available but the performance seems to be similar to the 64bit retroarch emulators at this point.
  • To build without 32bit support, change the BUILD_ARMHF export in the Makefile to n or add BUILD_ARMHF=n as a variable to make.
  • For RK3566, you can add Kodi to your build. Just change the BUILD_KODI export in the Makefile to y or add BUILD_KODI=y as a variavble to make. Kodi is also available as a prepackaged build in the extra_packages/rk3566 subfolder. Just copy it to your tools folder and launch from Options/Tools in the start menu.
  • Be aware that building Kodi will add a significant amount of time to your build. Could be double or triple the build time.
  • Initial build time on an Intel I7-8700 65w unit with a 512GB NVME SSD and 32GB of DDR4 memory is a little over 19 hours. Subsequent builds are about 3 hours thanks to ccache.

Credits and Thanks

ChatGPT for guidance on how to build a Debian image
Jetup13 for many themes
dani7959 for the replica theme
pix33l for the pixui theme
TheGreatCrippler for testing and feedback
kloptops for testing and feedback
Fraxinus88 for testing and feedback
ImCoKeMaN for testing and feedback
PortMaster team for support in figuring out PM interface issues

test webhook.... again......again!

dArkMoss

dArkMoss is spruceUI's fork of dArkOS: a Debian base OS on TF1 that hands off to spruce on TF2. The emulator and EmulationStation builds are stripped from the unit build scripts because spruce provides all of that from its own card; what is left is debootstrap, the kernel and image assembly.

Units:

unit device Makefile target script
rgb30 Powkiddy RGB30 make rgb30 build_rgb30.sh
miniloong Miniloong Pocket 1 make miniloong build_miniloong.sh

Images are built on GitHub Actions, not locally. Under Actions:

  • build-rgb30 / build-miniloong build one unit.
  • build-all builds every unit in parallel and publishes them to one release.

Each takes an optional release tag. Left blank, the image is only kept as a workflow artifact. Images ship as dArkMoss_<UNIT>_<suite>_<date>.img.7z.001 and .002 because a single volume is over GitHub's asset limit; the parts are a plain byte split, so cat them (or let 7z read .001) to extract.

Adding a unit that dArkOS already supports: copy build_rgb30.sh to build_<unit>.sh and change UNIT, add logos/unrotated/dArkMoss<unit>.png (the kernel boot logo), give it a name in the HW_DEVICE case in setup_spruce_handoff-rk3566.sh, add a dispatcher workflow next to build-rgb30.yaml and put the unit in build-all.yaml's matrix. Everything else in the pipeline already keys on UNIT.

About

Debian based ArkOS

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages