burtyb / clusterhat-image Goto Github PK
View Code? Open in Web Editor NEWConverts Raspbian/Raspberry Pi OS images to support Cluster HAT
Home Page: https://clusterhat.com/
License: MIT License
Converts Raspbian/Raspberry Pi OS images to support Cluster HAT
Home Page: https://clusterhat.com/
License: MIT License
Hi,
I switched the default Python on the cluster-hat image to Python 3.7 and /sbin/clusterctrl has the following error:
# python --version
Python 3.7.3
# clusterctrl
File "/sbin/clusterctrl", line 836
sys.exit(1)
^
TabError: inconsistent use of tabs and spaces in indentation
After replacing tabs with spaces in line 836 of /sbin/clusterctrl :
# clusterctrl
Traceback (most recent call last):
File "/sbin/clusterctrl", line 330, in <module>
import xra1200
File "/usr/share/clusterctrl/python/xra1200.py", line 39
except IOError, err:
^
SyntaxError: invalid syntax
after updating to "except IOError as err:" in /usr/share/clusterctrl/python/xra1200.py line 39 "clusterctrl on" works but there's still more work to be done:
# clusterctrl status
clusterhat:{}
Traceback (most recent call last):
File "/sbin/clusterctrl", line 613, in <module>
print ( "clusterhat:{}" ).format( clusterhat )
AttributeError: 'NoneType' object has no attribute 'format'
2to3 also produces a sizable diff
Thank you.
I am in the process of putting together a series of Yocto recipe for building minimal development images for Raspberry Pi hardware installed within a ClusterHAT configuration. As part of the quality assurance checks implemented within this build pipeline, I need to confirm the licensing of the clusterhat-image components.
Please add a LICENSE file with preferred open-source license for content within the clusterhat-image repository. Alternatively, I can add this file through a pull request if you would like to nominate your preferred licensing for these files.
Hi there. I work on a mac primarily and I'm finding it difficult to make my own images.
I don't suppose you would make a set of images using DietPi OS as the base?
I thought there'd be no harm in being cheeky and asking.
root@canby:/var/tmp# wget https://dist1.8086.net/clusterctrl/usbboot/bullseye/2023-05-03/2023-05-03-4-bullseye-ClusterCTRL-arm64-lite-usbboot.tar.xz
--2023-07-01 14:30:11-- https://dist1.8086.net/clusterctrl/usbboot/bullseye/2023-05-03/2023-05-03-4-bullseye-ClusterCTRL-arm64-lite-usbboot.tar.xz
Resolving dist1.8086.net (dist1.8086.net)... 95.216.250.64
Connecting to dist1.8086.net (dist1.8086.net)|95.216.250.64|:443... connected.
HTTP request sent, awaiting response... 403 Forbidden
2023-07-01 14:30:12 ERROR 403: Forbidden.
Please fix permissions.
Just upgraded to the new buster image. Thank you for providing that. It makes life much easier.
Small problem with resetting the controller though. Here's what gives:
Boot the controller and it gets DHCP from upstream (local home router). Lovely.
Boot p{1..4} and they also get an DHCP from upsteam. Also lovely.
But if you reboot the controller, the p{1..4} USB gadget net interfaces reset and fall back to clusterctrl_fallback_usb0.
Is that the expected behaviour? I don't remember that being the behaviour in the Stretch images.
make note in config.sh to make mnt2 dir if building usbboot img.
awesome otherwise thank you!!
Just a comment on these lines...
Instead of using losetup
followed by kpartx
, you can just tell losetup
to create devices for each partition using the -P
(--partscan
) flag. That is, if you do this:
$ sudo losetup -fP --show 2018-06-27-raspbian-stretch-lite.img
/dev/loop0
You get the following devices:
$ ls /dev/loop0*
/dev/loop0 /dev/loop0p1 /dev/loop0p2
So your code becomes a little simpler:
LOOP=`losetup -fP --show $DEST/ClusterHAT-$VER-lite-$REV-controller.img`
mount ${LOOP}p2 $MNT
mount ${LOOP}p1 $MNT/boot
Downloading new Clusterhat images means wiping my cluster and starting from scratch, so i upgraded stretch to buster using apt. It would be nice to have a way to update the clusterctl and anything else you've included using some custom repos.
Also, looking forward to a python3 compatible clusterctl script. clusterctl is currently the last thing on my Cluster that requires python2 :)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.