Setting Up a Librem 5 Application Development Environment

I hope that no one minds all of the posts I’ve made on this forum over recent days. I am starting to get serious about using the Librem 5 as my daily driver and possibly developing Librem 5 applications. So along with all of that comes many questions. My next question here is about application development.

Here is my plan:
1.) Get my librem 5 to connect to my Ubuntu PC to see what can be done to communicate during applications development.

2.) Remove my existing Ubuntu hard drive from my NUC6CAYH pc and install either PUREOS or Debian on to a new hard drive on that same PC.

3.) Build and the “Hello World” program and install what I built to my Librem 5. Move forward after that to build other applications.

My question now is about which operating system I should install. I have heard that PureOS is likely not going to have the drivers that I need for my NUC6. I also don’t want to install Debian and find that there are limits to what I can do in Debian and that I should have installed PureOS.

So which OS should I install in this case, to develop Librem 5 apps?

2 Likes

This is just great, keep at it. If you can, keep track what you do - a good step by step guide of what to to do and what not to would be good. Might get others to do the same. :+1:

One question on the plan though: a dedicated machine is good but why not use VM (other than it takes a bit of resources)?

1 Like

Install PureOS.

1 Like

I have used VMs before. The hardware in this case is only an Intel NUC6. It only uses an Intel Celeron J3455 chip which is generally used for light lifting types of Windows applications and were used mostly in laptops back when that chip was new several years ago. I have another NUC6 running Windows 10 well enough. But it won’t run Windows 11. It runs all Linux distros that I have tried, well so far. So I kind of have a feel for what that hardware is capable of.

I anticipate that Librem 5 application development will require a fair amount of hardware resources. From what I read, an emulation layer and cross architecture compiling will be required to build Librem 5 applications. A Linux PC tends to be lighter on resources than an equivalent Windows application development system might require. I also want to turn that same PC in to a remote Librem 5 applications server, if I can get that far. The development might eventually include a Mastadon-instance server, along with hosting other server applications. If I get involved enough in the development, it might also host my own free (as in free beer and freedom of speech) Librem 5 app store. But for now, I am having trouble even setting the x server set back to the PC after ssh-ing in to the Librem 5. So there is a very long way to go. I think the hardware resourcing on the NUC6 is likely to be adequate, but not over-kill. There is less likelihood of errors when working with only one dedicated OS as opposed to a VM. If I build too much to want to risk potentially losing it, I might later create VMs to occasionally back everything on that PC up. Ideally, this PC would do all of these things until eventually some day, I’ll need better hardware. By that time (assuming that I am successful), I’ll know more about what I am doing. In a few years if I get a new PC then, this much older NUC6 then might make a good server.

I really like these NUC PCs. I heard that Intel is not going to release any more of them. My current Windows 11 PC is a NUC11. I am sure that similar PCs will always stay in the market. You can have 4 of them running at once using a KVM switch, three monitors, and only one keyboard/mouse pair to control all of them. Each PC is only the size of a Librem Mini. Each PC can have different risk levels. With my personal finance and other personal business on a separate Windows 11 PC, I can also run linux servers with inbound VNC connections on a NUC, without putting my personal information at risk (except for what Microsoft will do with it in Windows 11). I can keep the server PCs on 24/7 and leave My Windows 11 PC turned off all of the time, except for when I am actually using it. So virtual machines aren’t too important to me.

I’ll probably start with PureOS on the development PC. I anticipate maybe having to use some compromised (un-free) drivers to get everything working, unless someone else has good reasons to use Debian instead.

2 Likes

Not that the following is hugely germane but Wikipedia says:

In July 2023, Intel announced that it would no longer develop NUC mainboards and matching mini PCs. They subsequently announced that NUC products will continue to be built by ASUS, under non-exclusive license.

So I guess you can keep going with NUCs if you want to.

1 Like