Getting into Linux Development?
from timidtaxidermist@lemmy.ca to linux@lemmy.ml on 01 Sep 11:42
https://lemmy.ca/post/50811113

Hi all! I’d like to get into development for linux-based OSes for mobile phones but don’t know where to start. I mainly want to support the broadening of supported devices for something like Postmarketos. Where do I start? Are there any handbooks out there that can guide me in the right direction? What’s the most promising project to start contributing to?

#linux

threaded - newest

Strit@lemmy.linuxuserspace.show on 01 Sep 11:51 next collapse

I recently saw a post from one of the PostmarketOS devs asking for someone to start maintaining the sdm845 out-of-tree fork of the kernel.

Post was on mastodon, but I can’t find it right now.

But you could ask in the PostmarketOS support/dev chats on what they need help with.

timidtaxidermist@lemmy.ca on 01 Sep 11:55 collapse

Great - I’ll head over there too.

Serinus@lemmy.world on 01 Sep 18:20 collapse

Go to their GitHub and look at issues and their comments first.

bjoern_tantau@swg-empire.de on 01 Sep 12:19 next collapse

I think the easiest is to get the thing onto some device. Pick something that annoys you and make it work better. There are so many parts to this it’s hard to recommend one. You have low level device drivers, the user interface in the form of DEs, or the apps themselves, either making the desktop apps work better or creating mobile ones.

You can also pick one of these things, find the related bugtracker and try to fix some easy looking bugs.

timidtaxidermist@lemmy.ca on 01 Sep 13:35 collapse

Sounds good - I have a couple devices lying around so l’ll try jumping in and see where it goes!

communism@lemmy.ml on 01 Sep 12:57 next collapse

Have you done OS dev before? Do you know a systems programming language? Learn an appropriate language if you don’t already know one, then look up OS dev books/guides online for that language. Someone’s probably made a minimal kernel in that language you can refer to.

You mentioned postmarketOS so you could have a look here and here.

timidtaxidermist@lemmy.ca on 01 Sep 13:33 collapse

Thank you - OS dev is new to me. I don’t have any real competency in any language yet, so I’ll make that a priority. I’ll use postmarketOS as my main point of reference, so I’ll take a look through their docs as a starting point.

communism@lemmy.ml on 01 Sep 13:40 collapse

I’d recommend learning either C or Rust. Pretty much every mainstream OS will be written in C. Rust is newer but known for its safety and a much more modern language. There are other systems programming languages but those two are very popular and will have lots of OS dev resources, plus if you are working with existing codebases they will be in C. Other languages may be entirely possible to write an OS in, and for really big ones like C++ and Go I’m sure there’s lots of OS dev resources for them too, I’m just not familiar with the OS dev ecosystem for those languages (and at the very least I hope it’s not controversial to say C++ has been made obsolete by the new systems languages…)

timidtaxidermist@lemmy.ca on 01 Sep 14:49 collapse

Great, C it is for a starting point

Katzenmann@feddit.org on 01 Sep 15:16 next collapse

Great to hear that you’re looking to get into PostmarketOS development! I recommend taking a phone that’s already supported, using it and then figure out how improve support the device.

Porting/Mainlining a new device is also possible but that can be demotivating if it doesn’t work and it’s generally harder to get started with.

If you have any questions or need help you can dm me and I can help.

timidtaxidermist@lemmy.ca on 01 Sep 15:49 collapse

I have a pixel 6a - it looks like there’s been some work done already and it seems to be supported, but lots of work to be done. Let’s see what I can do with it!

humanoidchaos@lemmy.cif.su on 02 Sep 14:01 next collapse

I’m not a developer, but I’m guessing a good start would be to try installing it on an old phone if you have one.

See what problems you come across, try to learn what’s going on, share your knowledge with others.

timidtaxidermist@lemmy.ca on 02 Sep 22:42 collapse

From the responses I’ve seen, it looks like this is the way to go. I have a couple old phones to choose from so I’ll just jump in and give it a try!

bigmclargehuge@lemmy.world on 02 Sep 16:13 collapse

The postmarketOS wiki has info for specific devices, but also an article on installing the generic Snapdragon 865 845 build of the OS on any device with that chip, of which there are numerous, many without extensive support. That might be a starting point?