Building a Linux Distro From Scratch: DHCP Networking
FULL SERIES:
==========================
Monkey See, Monkey Do LINUX
==========================
https://github.com/maksimKorzh/msmd-linux
================================================
VICI – Minimalist cross-platform terminal based text editor
================================================
https://github.com/maksimKorzh/vici
==================================
ED – The standard Linux Text Editor in Go
==================================
https://github.com/maksimKorzh/ed
====================
MY TOY TEXT EDITORS
====================
VI-like text editor in 100 lines of C++ code:
https://github.com/maksimKorzh/ved
Text editor in 50 lines of python:
https://github.com/maksimKorzh/v
VI-like text editor in 125 lines of python:
https://github.com/maksimKorzh/edit/blob/main/edit.py
Text editor with python shell:
https://github.com/maksimKorzh/pi
Tiny vi-like text editor in only 125 lines of python code:
https://github.com/maksimKorzh/vip
Text editor with syntax highlighting:
https://github.com/maksimKorzh/code
Kilo text editor cone in C:
https://github.com/maksimKorzh/kilo-clone
Kilo text editor port to ESP32:
https://github.com/maksimKorzh/esp32-kilo
===============================================
TUTORIALS COVERING MOST OF THE ABOVE PROJECTS
===============================================
=====================
SUPPORT THE CHANNEL
=====================
Patreon: https://www.patreon.com/code_monkey_king
PayPal: maksymkorzh@gmail.com
==========
CONTENTS
==========
00:00 Intro
01:25 Writing a ‘run.sh’ script
02:35 Writing a ‘build_root.sh’ script
04:25 Updating ‘init’ script to rely on busybox ‘/sbin/init’
05:50 Creating /etc folder
05:55 Writing ‘/etc/inittab’ configuaration file for busybox ‘/sbin/init’
09:20 Writing ‘shell.sh’ script to provide environmental variables to a shell on boot
11:30 Updating ISO image
12:30 Testing udpated init setup
13:05 Checking for a custom environmental variable
13:20 When do we need environmental variables setup before shell starts
14:10 Testing reboot & poweroff
14:25 Setting up networking
14:40 Time to set up networking
15:20 Loop over network devices
16:30 Turn all of the network devices on
17:35 Running DHCP applet to set up IP address, mask and route
18:48 Writing udhcpc callback script ‘network.sh’ script to assign IP/mask to eth0
24:15 Testing network connection
25:00 Pinging Google DNS server
26:25 Installing ‘get’, a ‘wget’ alternative with a custom DNS resolver
27:00 A quick ‘get’ util source code overview
29:57 ‘get’ build flags
30:30 Building ‘get’
30:55 Installing ‘get’ to rootfs
31:40 Installing ‘vici’ text editor to rootfs
33:07 Testing text editor
33:40 Testing ‘get’ via STDIN/STDOUT
34:20 A few words on home directory
34:45 Using ‘get’ to download HTML file
35:30 Downloading VIM from s.minos.io static binaries repo using ‘get’
37:30 Installing VIM to the system
38:10 Testing VIM
40:10 Downloading code from github using ‘get’
41:30 Outro
by Monkey see, monkey do
linux dhcp client
Contents:
00:00 Intro
01:25 Writing a 'run.sh' script
02:35 Writing a 'build_root.sh' script
04:25 Updating 'init' script to rely on busybox '/sbin/init'
05:50 Creating /etc folder
05:55 Writing '/etc/inittab' configuaration file for busybox '/sbin/init'
09:20 Writing 'shell.sh' script to provide environmental variables to a shell on boot
11:30 Updating ISO image
12:30 Testing udpated init setup
13:05 Checking for a custom environmental variable
13:20 When do we need environmental variables setup before shell starts
14:10 Testing reboot & poweroff
14:25 Setting up networking
14:40 Time to set up networking
15:20 Loop over network devices
16:30 Turn all of the network devices on
17:35 Running DHCP applet to set up IP address, mask and route
18:48 Writing udhcpc callback script 'network.sh' script to assign IP/mask to eth0
24:15 Testing network connection
25:00 Pinging Google DNS server
26:25 Installing 'get', a 'wget' alternative with a custom DNS resolver
27:00 A quick 'get' util source code overview
29:57 'get' build flags
30:30 Building 'get'
30:55 Installing 'get' to rootfs
31:40 Installing 'vici' text editor to rootfs
33:07 Testing text editor
33:40 Testing 'get' via STDIN/STDOUT
34:20 A few words on home directory
34:45 Using 'get' to download HTML file
35:30 Downloading VIM from s.minos.io static binaries repo using 'get'
37:30 Installing VIM to the system
38:10 Testing VIM
40:10 Downloading code from github using 'get'
41:30 Outro
Could we set up a Wi-Fi network as well? Ethernet isn’t really available to me but I still want to continue with this project
Thankyou…
"Roo-tah" Said just like Philomena Cunk! Posh mfer!
Good old DHCP…………"DORA"…Discover, offer, request, acknowledge.
Very cool that you made your own "get" that's neat.
👍
I've been playing around with computers, building them and programming them since the late 70's. Started with 8bit CPUs on single PCB with 1KB RAM and 1KB ROM all coded in hex. Then all the way through finishing a degree on computer science and working in the industry for 23 years… I work with a bunch if very clever folk, yet I'm constantly blown away by your diverse knowledge and outstanding ability to do this stuff… KIM, chess engines, go etc. Very impressive.