(David - I have co-opted this thread for development of a Pi image for Ubuntu Budgie)
Discussion points so far between myself and Sam
- Initial target is a Raspi v4B 4GB RAM
This makes sense, especially as it seems to be the most common/readily available model. I have been using the 4GB for months, although I also just received my 8GB model. I’d assume the SD card speed / CPU speed is more of a bottleneck than RAM.
Later look to expand with other ARM boards - need to research the best target e.g. Pinebook et al
Would like to investigate Touch Screen support in general i.e. will need tweaks and tucks in budgie-desktop code and applets
a. Integration with OnBoard i.e. the screen keyboard - how is this going to be done.
Need a suggestion for the target Touch Screen resolution
I have been using mine at 1024x600 (native resolution of the one I bought). “Official” screen is 800x480. I am not sure if you can set the official screen larger than its native (i.e. my 3rd party one can be set as high as 1920x1080 but looks fuzzy because it doesn’t have that many pixels, but certainly useful when a menu or app extends beyond the native resolution). I can research what the popular available sizes are, and what others are doing. It’s easy enough to try out things too and give real you feedback with this. Best I can tell so far is 800x480 is common for 5", 1024x600 for 7", and 1280x800 for 10".
Investigate and detail the best method to create SD Card images
Would like to publish these images - where? SourceForge? Do we have any bandwidth issues if we self publish? Talk to Dustin. Talk to Martin Wimpress (UB Mate)
Need a equipment shopping list to get going. Recommendations Sam?
Basics apart from the RasPi iself:
- power supply (3A 5V USB-C)
- possibly an inline switch add-on, if the power supply doesn’t have one, since Raspi has no power button. After shutdown, you have to unplug and plug in the raspi to restart it, so it just is a convenience really.
- micro sd card of course - I currently use a SanDisk Extreme Plus 64gb (U3/V30 speed class). I have also used the Samsung Evo+ 32gb, and others, including a cheap 16GB. Though the 16GB felt slower, it has worked with every card I have given it so far.
- obviously a way to burn the microsd card - probably have this already though
- case is nice but not mandatory - if using one I do recommend one with a tiny cooling fan. I would reach the CPU throttle temperature fairly easily without one.
- micro hdmi to hdmi cable possibly if using a regular monitor with hdmi input.
I took the easy way out and bought the kits that had all of these included (aside from the sd cards, but I have a bunch of those already). The Cana Kit is the only one available at a local store, which is the main reason I went with that.
- touchscreen - I have been using EVICIV 7" touchscreen I found on Amazon. I am very happy with it but there may be better or most cost-efficient options. It uses micro hdmi and usb for the touch input, so it works right out of the box. I would guess any that use the usb/hdmi setup should work fine. I want to test the official screen, see if its supported out of the box or if special drivers are needed, since it uses the ribbon cable and driver board. It is supposed to be delivered Friday so I will play with it this weekend. I also have a full size monitor that I use with it too.
Best way to-do development on a Raspi?
a. I presume should VNC/SFTP to the Raspi?
b. Guess need some-sort of compatible keyboard for the Pi - part of the shopping list?
Tried several usb mice / keyboards, all have worked fine. I have been using the Logitech MK270 wireless combo. I like it because it only ties up one usb port for both, and I can put them in a drawer when I am done and leave the Pi looking clean without a bunch of wires. But before, I was using wired usb mouse and keyboard I had lying around, no issues. Originally I started with an iPazzPort KP-810-19S - worked well except for its size, and worse - it “sleeps” after a very short time so I was always waiting for it to power on. It was okay if only used occasionally, but using a full size keyboard and mouse makes things so much easier. Calculator, email, Volume up/down and mute buttons on the keyboard even work correctly.
c. Creating debian packages. We could use launchpad to create ARM64 images. Alternatively could cross-compile stuff. The latter needs investigation how to do this.
9. Software support:
a. Should we initially target a minimal installation? If so how? Is this going to be some-sort of bash script to deinstall packages and generally cleanup? Could use the list of packages here to cleanup with https://bazaar.launchpad.net/~ubuntubudgie-dev/ubuntu-seeds/ubuntu-budgie.groovy/view/head:/desktop.minimal-remove
b. Maybe later think about a full-fat image. May need a tweak and a tuck for the package selection. Needs investigation
- Would like the initial appearance of the Raspi Desktop to look very much like the intel desktop.
Without a doubt, I agree 100%. In fact, while I customize my other Budgie installs, I have left my raspi almost exactly how it is with the default appearance. It looks really nice as is. I think the picture I posted a couple months ago is ShowTime at its default size, just centered. So yeah, it needs to be scaled.
a. ShowTime would need a tweak to determine the initial resolution on launch and reduce the font size - the default font size would be too big for the lower resolution Raspi b. The menu would need a more development to size for the desktop c. Alternatively we could ship an "raspi.layout" with different - more resolution appropriate applets for the raspi.
We should do development as open as possible. Suggest use the discourse forum here and/or ubuntubudgie.org/blog - Sam ping Nikola for access if we go down the blog route.
Target for the initial release should be 21.04 via our own release mechanism
a. Maybe 21.10 we could target a Canonical produced raspi image. Ubuntu is doing this now for 20.10 - so can discuss this with the Ubuntu team.
b. for 21.10 need a strategy - need to meet beta testing, release candidate and release testing requirements. On going support for ARM specific issues. All not to be underestimated for an “official release”
Later we could consider re-rolling for 20.04 - so if we target multiple releases then we should automate/script everything so that releases should be as painless and reproducible as possible.
Does Ubuntu Mate have a release production method? Discuss with Martin Wimpress.
Involvement with the raspi community? Maybe raise on an raspi forum - could get more people to help hopefully.
Raspi supports SNAPS - so our welcome screen will work here - we already publish an ARM based snap for ubuntu-budgie-welcome.
a. Need to review welcome and see which bits need reworking to be ARM specific.
Desktopify does install this snap as well by default when installing Budgie. Easy enough to dig into this one.
17 … and I imagine more stuff to be added after considering the above!
Some “gotchas” I have found:
- Using the Ubuntu server image doesn’t take into account the region. Without a real “install”, I keep forgetting to set my location / timezone.
- Server image has a user “ubuntu” set up, forces you to set a new password on first login. Mate image looks like it sets up the user/password on first run.
- Not an Ubuntu issue but Raspi doesn’t have a real-time clock module. It sets the time on startup using NTP. (does this by default) Drawback is no network, no time.
The good thing is that a lot of stuff works by default. My network printer, external HD, and a few other things work no different than on my other machines. Tilix is fixed on 20.10. Some apps don’t have ARM versions yet (like Slack). However, other than it being a bit slower, when using on a full monitor with mouse and keyboard, its easy to forget its a RasPi.