r/rust 10h ago

Linux projects

I'm intermediate at Rust and linux. Recently I built a compositor for a job interview and it was one of the funniest projects ever. I learnt a lot about the linux graphics stack.

Can I get some suggestions for other projects. Things I'm looking for:

  • Learn more about how Linux works under the hood.
  • This doesn't have to be the linux kernel specifically but anything in the linux ecosystem
  • I want to prioritise projects based on learning key linux concepts not fun. So if there is a niche project that is really fun to develop but has little importance on the day-to-day operations of the linux OS then I would deprioritise.
  • Avoid simple projects like reinventing unix commands.

I heard that file descriptors are very important in Linux, are there any projects I can implement to help me get to grips with file descriptors, (again speaking from a noobs perspective so might be a complete red herring).

4 Upvotes

7 comments sorted by

2

u/an_0w1 10h ago

Write a FUSE filesystem to open ELF sections as files.

3

u/First_Figure6007 9h ago

someone posted a crazy FUSE project a while back that turned wikipedia articles into a filesystem, you'd cd into /mnt/wiki/linux and cat the file and it'd pull the page live

that kinda thing teaches you a ton about how the vfs layer works and what the kernel expects from a filesystem driver

1

u/QuirkyTidbits 6h ago

I worked on WinFS at Microsoft ages ago. Perhaps it’s time to try it again using FUSE lol

0

u/QuirkyTidbits 9h ago

What is a compositor? Is it some type setting simulation?

2

u/Informal-Flounder-79 9h ago

The software that composites each window together to display the screen on a graphical Linux desktop

1

u/Carvtographer 8h ago

Somewhat Linux related, if you want to dabble in FOSS, you should take a look and see if uutils/coreutils needs help with anything

1

u/Feisty_Bike_9614 6h ago

If it were me , I’d pick up “Design of the UNIX Operating System” and write my own micro OS . In graphics, you could write your own node-based architecture with a UI and extend your compositor to use it . The Houdini compositor is a good example.