Welcome! This repository focuses on learning Linux, Embedded Linux, and Modern C++ through hands-on projects and practical exploration.
This repository is a personal learning journey through:
- Linux fundamentals and administration
- BASH scripting and automation
- Modern C++ programming
- Embedded Linux system customization
- Building and deploying custom Linux images for Raspberry Pi 4 using Yocto
- Linux Administration:
- Gained proficiency in file system navigation, permissions, and user/group management (with visual guides).
- Explored process management, signals, priorities, and system monitoring tools.
- Practiced debugging and performance analysis using system calls.
- Modern C++: Built a user sign-up application using modern C++ features and best practices.
- BASH Scripting: Automated file organization and shell scripting best practices.
- Yocto Project:
- Built custom Linux images for Raspberry Pi 4.
- Created and managed custom Yocto layers and recipes (audio, infotainment, editors, graphics, and more).
- Integrated real applications (nano, RPiPlay, scrcpy, C++ demos) into images.
- Manual Customization:
- Cross-compiled toolchains, custom bootloaders, and kernels for Raspberry Pi 4.
- Built minimal root filesystems and tested with QEMU.
- Each main folder contains a README and practical exercises or projects.
- Follow the guides and scripts for step-by-step learning.
- Use the images and diagrams for visual understanding.
- Try building and running the projects on your own Linux system or Raspberry Pi 4.
- Linux OS (Ubuntu/Debian recommended)
- Basic command line knowledge
- Raspberry Pi 4 (for hardware projects) or QEMU (for emulation)
This repository is part of my coursework for the Bullet-guru Embedded Linux course, documenting my progress and achievements as I learn Linux and embedded systems.
See each subfolder's README for more details and instructions.