summaryrefslogtreecommitdiff
path: root/init/src/main.rs
diff options
context:
space:
mode:
authornamilsk <namilsk@namilsk.tech>2026-01-11 14:56:17 +0300
committernamilsk <namilsk@namilsk.tech>2026-01-11 14:56:17 +0300
commit19e63dfa191279d3e1bd99bcc2adca781ad9451d (patch)
tree559fef20998fa7058d6aa02bddc3ee79cbb58708 /init/src/main.rs
parent821380613075ac91410644cb9fed900ab6a1df61 (diff)
Implemented `SIGCHLD` & again fixed naming
Diffstat (limited to 'init/src/main.rs')
-rw-r--r--init/src/main.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/init/src/main.rs b/init/src/main.rs
index 7a77e31..630787e 100644
--- a/init/src/main.rs
+++ b/init/src/main.rs
@@ -4,6 +4,7 @@ mod log;
mod mounts;
mod pid_one;
mod processes;
+mod signals;
use crate::host::locale;
use crate::host::set::set_hostname;
@@ -13,6 +14,7 @@ use crate::mounts::fstab::FstabEntry;
use crate::mounts::rescue;
use crate::pid_one::check_pid;
use crate::processes::udev::spawn_udev;
+use crate::signals::sigchld;
// RULE: I will not use .expect() and .unwrap() in this project. This causes panic,
// which will affect stability.
@@ -60,10 +62,13 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
Err(e) => log_critical_error(&format!("Something went wrong while spawning udev: {}", e)),
}
+ // TODO: Locale & tz parsing
match locale::set_system_localization(None, None) {
Ok(_) => log_success("Localization (timezone and locale) set successfully."),
Err(e) => log_warning(&format!("Failed to set localization: {}", e)),
}
+ sigchld::setup_sigchild_handler();
+
Ok(())
}