Giter Site home page Giter Site logo

nixos-arm's Introduction

WIP Nixos images for ARM-base SBCs

Work-in-progress SD card images for ARM-based boards. This project was started from scratch as a hobby. I adapted patches for linux kernel integrated into armbian.

Xunlong boards

I integrated patches from Xunlong linux kernel and Debian/Ubuntu images.

Related repos:

OrangePi Zero2

  1. Partially reworked sd-image generation module
  • Firmware (vfat) partition which is used on UEFI enabled boards like Raspberry Pi now is optional
  • Added support for different image compression methods (zstd, xz, lzma)
  • Added support for custom compression levels (0-9)
  1. ARM Trusted Firmware modifications:
  • Enabled debug
  1. U-Boot modifications:
  • Added workaround to enable THS temperature sensors
  • Added workaround to enable GPU to get panfrost working
  1. Linux kernel modifications:
  • Added board device-tree for OrangePi Zero2
  • Added themperature sensor dtiver
  • Added onboard ethernet phy support
  • Added Unisoc UWE5622 wifi/bluetooth drivers:
    • Wifi
    • Bluetooth
  • Added Cedrus hardware accelerated video codec support (not tested)
  • Added HDMI support fixes
    • 3D rendering via panfrost tested using kmscube
  • Added Sound codec support (not tested)
  • Added fixes for RTC driver
  • Added custom configuration

Installation

  1. Download unpack and write SD image to compatible SD-card
  2. Insert SD-card and supply power onto the board
  3. When system is started connect via ssh or serial port. (user: root, password: nixospi)
  4. Run nixos-generate-config to get initial configuration in /etc/nixos
  5. Edit /etc/nixos/configuration.nix manually (add users, enable services, system packages and etc.)
  6. Run nix-channel --update and nixos-rebuild switch to finish installation
  7. Reboot

nixos-arm's People

Contributors

katyo avatar deftdawg avatar

Stargazers

Edgar Gomes avatar Jefferson Santos avatar Dan Lipsitt avatar Fer avatar sooriya avatar Zifan Hua avatar Pedro Batista avatar Jak Kos avatar  avatar İrem "Siren" Kuyucu avatar Yury Shvedov avatar Martin Schmidt avatar Pr0m1x avatar Jan Beinke avatar

Watchers

 avatar Yury Shvedov avatar Zoom avatar  avatar

nixos-arm's Issues

Orange Pi 3 LTS img failing to build

Running make within the nixos-arm directory displays this output:

nix-build '<nixpkgs/nixos>' -A config.system.build.sdImage -I nixos-config=./sd-image-opi3lts.nix -o result-opi3lts --option builders '' --argstr system aarch64-linux 2>&1 | tee sd-image-opi3lts.log
trace: warning: system.stateVersion is not set, defaulting to 24.05. Read why this matters on https://nixos.org/manual/nixos/stable/options.html#opt-system.stateVersion.
error:
       … while calling the 'derivationStrict' builtin

         at /builtin/derivation.nix:9:12: (source not available)

       … while evaluating derivation 'nixos-sd-image-sunxi64-orangepi-3-lts-24.05pre554114.e92039b55bcd-aarch64-linux.img'
         whose name attribute is located at /nix/store/ywi1r7f8n81faa09m616a4zqrii4dzyw-nixos/nixos/pkgs/stdenv/generic/make-derivation.nix:348:7

       … while evaluating attribute 'buildCommand' of derivation 'nixos-sd-image-sunxi64-orangepi-3-lts-24.05pre554114.e92039b55bcd-aarch64-linux.img'

         at /home/lenny/Projects/server/nixos-arm/modules/sd-image.nix:244:7:

          243|
          244|       buildCommand = ''
             |       ^
          245|         mkdir -p $out/nix-support $out/sd-image

       (stack trace truncated; use '--show-trace' to show the full trace)

       error: attribute 'version' missing

       at /nix/store/ywi1r7f8n81faa09m616a4zqrii4dzyw-nixos/nixos/nixos/modules/tasks/filesystems/zfs.nix:544:23:

          543|         {
          544|           assertion = cfgZfs.modulePackage.version == cfgZfs.package.version;
             |                       ^
          545|       

Documentation

Hi! I've started the wiki page about nixos on OrpiZero2. Maybe you have something to add or fix there? Feel free to edit in case you wish. Thank you!

Orange Pi 3 LTS img failing to build

Running make within the nixos-arm directory displays this output:

nix-build '<nixpkgs/nixos>' -A config.system.build.sdImage -I nixos-config=./sd-image-opi3lts.nix -o result-opi3lts --option builders '' --argstr system aarch64-linux 2>&1 | tee sd-image-opi3lts.log
trace: warning: system.stateVersion is not set, defaulting to 24.05. Read why this matters on https://nixos.org/manual/nixos/stable/options.html#opt-system.stateVersion.
error:
       … while calling the 'derivationStrict' builtin

         at /builtin/derivation.nix:9:12: (source not available)

       … while evaluating derivation 'nixos-sd-image-sunxi64-orangepi-3-lts-24.05pre554114.e92039b55bcd-aarch64-linux.img'
         whose name attribute is located at /nix/store/ywi1r7f8n81faa09m616a4zqrii4dzyw-nixos/nixos/pkgs/stdenv/generic/make-derivation.nix:348:7

       … while evaluating attribute 'buildCommand' of derivation 'nixos-sd-image-sunxi64-orangepi-3-lts-24.05pre554114.e92039b55bcd-aarch64-linux.img'

         at /home/lenny/Projects/server/nixos-arm/modules/sd-image.nix:244:7:

          243|
          244|       buildCommand = ''
             |       ^
          245|         mkdir -p $out/nix-support $out/sd-image

       (stack trace truncated; use '--show-trace' to show the full trace)

       error: attribute 'version' missing

       at /nix/store/ywi1r7f8n81faa09m616a4zqrii4dzyw-nixos/nixos/nixos/modules/tasks/filesystems/zfs.nix:544:23:

          543|         {
          544|           assertion = cfgZfs.modulePackage.version == cfgZfs.package.version;
             |                       ^
          545|       

Nix OS for orange pi zero 2w

I'm trying to install Nix OS for orange pi zero 2w. Since it uses 618 processors some changes might be required I guess. If so where should I start to tinker. Please point in the right direction. Thanks in advance.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.