Jump to content

rpardini

Members
  • Posts

    51
  • Joined

  • Last visited

Reputation Activity

  1. Like
    rpardini got a reaction from lanefu in Bring up for Odroid N2 (Meson G12B)   
    Yeah, valid to mention I did a big rework of current/5.10.y last year that has not been included in any release yet. The images we have up (from August?) do not include them and are very problematic.
    The rework fixes a ton of problems and usually brings 5.10.y/current stability, apart from reducing the impact of N2 on the other G12's.
    In the process, UHS speeds for SD were lost (they were implemented via vendor uboot 2015 hacks by HK), governor was set to performance.... all things that may have been fixed in latest versions of mainline u-boot; and Neil Armstrong has already pointed me to fixes for a bunch of things, so only more good things to come.
    Some users have built from master or tried my unofficial images and feedback was pretty good. If only HK would support us somehow or at least work in a more mainline-oriented way on their own branches....
    For next release I hope we can keep 5.10.y as current for some real users to try and after that I'll rework edge kernel to bring 5.15 / 5.16 goodness, uboot 2022.01 already is done by Igor, 100% mainline even for SPI boot (and even SATA boot on HC4).
    Right now my N2 is "in production" and has 55 days uptime with 5.10.83-meson64 and is a beast; I'd accept a second one for development, although I'm focused on the HC4 now.
     
     
  2. Like
    rpardini reacted to Igor in Armbian 22.02 (Pig) Release Thread   
    Fixed some UX troubles on the download pages, examples:  https://www.armbian.com/banana-pi-m2-plus/ https://www.armbian.com/rpi4b/ https://www.armbian.com/odroid-hc4/
     
    - download list is now completely automated, pulling from build config files https://github.com/armbian/build/blob/master/config/targets.conf
    - added option to advertise recommended targets at download pages https://armbian.atlassian.net/browse/AR-1057 by setting a property in a targets.conf
    - label supported / not supported for kernel is no more. instead label for CLI / Desktop / minimal
    - added "Closed bootloader" property
    - improved FAQ
    - enabled WIP builds for: RPi4, UEFI arm & x86
     
  3. Like
    rpardini got a reaction from TRS-80 in RFC: armbian-build architecture   
    Yes, but fear not, _fragments_ lives on in my branches. I will try to upstream it again eventually, maybe together with more useful features/refactoring based on it.
  4. Like
    rpardini got a reaction from Jeremiah Cornelius in Release Announcement: TWO New, Community Unofficial Armbian MAINLINE Desktop Images for Khadas VIM3 Pro   
    Hey @Jeremiah Cornelius great stuff.
    I've been working on removing the ODROID-specific cruft from the G12B family in armbian/build.
    That is almost done now (some damned patches are still in the way) so I could start work on adding VIM3 officially.
    Are you on Armbian's Discord? Catch me there in #amlogic as 'rpardini'
    We could surely benefit from each other's work (and I from the fact you have a VIM3 to test on ;-) 
    Let me know
     
  5. Like
    rpardini got a reaction from Jeremiah Cornelius in Release Announcement: TWO New, Community Unofficial Armbian MAINLINE Desktop Images for Khadas VIM3 Pro   
    Yeah, don't bring boards on vacation is a decent policy, though often violated I hear.
     
    I realized after posting that we're on a tight schedule (Armbian 21.08 release) so I jumped the gun and sent a very basic PR, but is 100% untested.
    It's Armbian's default meson64 kernel, mainline u-boot 2021.04 with vim3 default config, and the a311d DTB from mainline kernel, and that's it.
    It could benefit from your work (asound file, any gpu/X11 settings, etc) but should otherwise be very similar to the N2 image I understand you based off.
    If it boots, it's a win already.
     
    Enjoy your vacations!
     
     
  6. Like
    rpardini got a reaction from Werner in Help With Understanding Firstrun and Resetting Armbian Images   
    Hey @Jeremiah Cornelius 
    I've been working on something similar it seems, thanks to @lanefu for making the connection.
    Although the path I took was directly modifying the Armbian build scripts, instead of modifying a live image and then re-packing it.
     
    My fork of Armbian is quite complex, but I'm slowly splitting and reorganising things (and sometimes writing a metaprogramming Bash framework in the process ) 
    A few points that may be of interest to you:
     
    - Onboarding replaced by cloud-init, instead of any interactive onboarding, I configure cloud-init to read some YAML files from /boot.
      /boot/network-config can configure all aspects of networking (including wifi), /boot/meta-data is just that, and /boot/user-data can do almost anything, create users, passwords, import SSH keys, install packages, run scripts, resize rootfs, create SSH host keys, etc.
      cloud-init is of course focused on cloud images, but actually can be used on any environment, if you can stomach its YAML and hammer on its config.
      With cloud-init comes netplan.io (in place of NetworkManager) and some other stuff that may not be appropriate for your use-case so take with a grain of salt.
      Also my implementation is not bullet-proof yet, but it aims to work just like the Ubuntu RaspberryPi 4 "Server" image (also has cloud-init out of the box).
      Most of it is done in https://github.com/rpardini/armbian-build/blob/rpardini-fragments/userpatches/fragments/cloud-init/cloud-init.sh (including the .not_logged_in_yet thing)
      Some other related stuff in https://github.com/rpardini/armbian-build/blob/rpardini-fragments/userpatches/fragments/more_like_ubuntu_cloud.sh (which disables a bunch of stuff in the BSP,  during BSP-generation, so that reinstalls/upgrades of the bsp package do not ruin everything).
     
    - A trick I call rootfs-in-rootfs, during the image build process, I capture an e2image ext4 dump of the produced ext4 rootfs and then include it in the rootfs.  A bit like having a directory full of files, creating a .zip of it, then including that .zip file inside itself  but without the compression.
      Then boot the SD card (which includes the rootfs dump inside) and run "e2image -racp /root/rootfs.ext4.e2img /dev/sda2" for example.
      The nice thing is that e2image (part of e2fsprogs) can do a "smart" copy (-c), knowing that reading is cheaper than writing, it can read both the source and destination and only write the changed blocks to the target. This allows for a very, very fast version of "nand_sata_install",  especially on the 2nd+ "flash".
      More speed comes from reading/writing some hundred-thousand whole blocks instead of possibly millions of files that rsync would need to inspect individually.
      The relevant code fragment is https://github.com/rpardini/armbian-build/blob/rpardini-fragments/userpatches/fragments/rootfs_e2img_inside_rootfs.sh
     
    Hopefully these will be of some help,
    Ricardo
     
     
  7. Like
    rpardini got a reaction from lanefu in Help With Understanding Firstrun and Resetting Armbian Images   
    Hey @Jeremiah Cornelius 
    I've been working on something similar it seems, thanks to @lanefu for making the connection.
    Although the path I took was directly modifying the Armbian build scripts, instead of modifying a live image and then re-packing it.
     
    My fork of Armbian is quite complex, but I'm slowly splitting and reorganising things (and sometimes writing a metaprogramming Bash framework in the process ) 
    A few points that may be of interest to you:
     
    - Onboarding replaced by cloud-init, instead of any interactive onboarding, I configure cloud-init to read some YAML files from /boot.
      /boot/network-config can configure all aspects of networking (including wifi), /boot/meta-data is just that, and /boot/user-data can do almost anything, create users, passwords, import SSH keys, install packages, run scripts, resize rootfs, create SSH host keys, etc.
      cloud-init is of course focused on cloud images, but actually can be used on any environment, if you can stomach its YAML and hammer on its config.
      With cloud-init comes netplan.io (in place of NetworkManager) and some other stuff that may not be appropriate for your use-case so take with a grain of salt.
      Also my implementation is not bullet-proof yet, but it aims to work just like the Ubuntu RaspberryPi 4 "Server" image (also has cloud-init out of the box).
      Most of it is done in https://github.com/rpardini/armbian-build/blob/rpardini-fragments/userpatches/fragments/cloud-init/cloud-init.sh (including the .not_logged_in_yet thing)
      Some other related stuff in https://github.com/rpardini/armbian-build/blob/rpardini-fragments/userpatches/fragments/more_like_ubuntu_cloud.sh (which disables a bunch of stuff in the BSP,  during BSP-generation, so that reinstalls/upgrades of the bsp package do not ruin everything).
     
    - A trick I call rootfs-in-rootfs, during the image build process, I capture an e2image ext4 dump of the produced ext4 rootfs and then include it in the rootfs.  A bit like having a directory full of files, creating a .zip of it, then including that .zip file inside itself  but without the compression.
      Then boot the SD card (which includes the rootfs dump inside) and run "e2image -racp /root/rootfs.ext4.e2img /dev/sda2" for example.
      The nice thing is that e2image (part of e2fsprogs) can do a "smart" copy (-c), knowing that reading is cheaper than writing, it can read both the source and destination and only write the changed blocks to the target. This allows for a very, very fast version of "nand_sata_install",  especially on the 2nd+ "flash".
      More speed comes from reading/writing some hundred-thousand whole blocks instead of possibly millions of files that rsync would need to inspect individually.
      The relevant code fragment is https://github.com/rpardini/armbian-build/blob/rpardini-fragments/userpatches/fragments/rootfs_e2img_inside_rootfs.sh
     
    Hopefully these will be of some help,
    Ricardo
     
     
×
×
  • Create New...