Initial commit

Signed-off-by: sisungo <[email protected]>
This commit is contained in:
2026-09-01 13:01:13 +00:00
commit 5163bdc367
34 changed files with 2625 additions and 0 deletions
+19
View File
@@ -0,0 +1,19 @@
[service]
display-name = "Linux Device Daemon"
description = "Userspace daemon for dynamically managing Linux device files and their properties."
[exec]
start = "lxdeviced"
[env]
working_dir = "/"
clear_vars = true
[retry]
max-attempts = -1
[env.vars]
PATH = "/usr/bin"
LXDEVICED_HAS_DEVTMPFS = "1"
LXDEVICED_DEV_ROOT = "/dev"
LXDEVICED_SYSFS_ROOT = "/sys"
+66
View File
@@ -0,0 +1,66 @@
[
(
when: Match("DEVPATH", "/devices/virtual/mem/null"),
do: [
Set("MODE", "0o666"),
Set("OWNER", "0"),
Set("GROUP", "0"),
],
),
(
when: Match("DEVPATH", "/devices/virtual/mem/zero"),
do: [
Set("MODE", "0o666"),
Set("OWNER", "0"),
Set("GROUP", "0"),
],
),
(
when: Match("DEVPATH", "/devices/virtual/mem/urandom"),
do: [
Set("MODE", "0o666"),
Set("OWNER", "0"),
Set("GROUP", "0"),
],
),
(
when: Match("DEVPATH", "/devices/virtual/mem/random"),
do: [
Set("MODE", "0o666"),
Set("OWNER", "0"),
Set("GROUP", "0"),
],
),
(
when: Match("DEVPATH", "/devices/virtual/mem/full"),
do: [
Set("MODE", "0o666"),
Set("OWNER", "0"),
Set("GROUP", "0"),
],
),
(
when: Match("DEVPATH", "/devices/virtual/mem/mem"),
do: [
Set("MODE", "0o600"),
Set("OWNER", "0"),
Set("GROUP", "0"),
],
),
(
when: Match("DEVPATH", "/devices/virtual/mem/port"),
do: [
Set("MODE", "0o600"),
Set("OWNER", "0"),
Set("GROUP", "0"),
],
),
(
when: Match("DEVPATH", "/devices/virtual/mem/kmsg"),
do: [
Set("MODE", "0o600"),
Set("OWNER", "0"),
Set("GROUP", "0"),
],
),
]
+8
View File
@@ -0,0 +1,8 @@
[
(
when: Match("MODALIAS", ".*"),
do: [
Command(f("modprobe {MODALIAS}")),
],
),
]
+17
View File
@@ -0,0 +1,17 @@
[
(
when: Match("SUBSYSTEM", "tty"),
do: [
Set("MODE", "0o600"),
]
),
(
when: All([
Match("SUBSYSTEM", "tty"),
Match("DEVNAME", "tty"),
]),
do: [
Set("MODE", "0o666"),
]
),
]
+54
View File
@@ -0,0 +1,54 @@
[
// Register information providers that knows block devices
(
when: All([
Match("ACTION", "add"),
Match("SUBSYSTEM", "block"),
Match("DEVNODE", ".*"),
]),
do: [
UseProvider("FSUUID", f("blkid -o value -s UUID {DEVNODE}")),
],
on_error: Continue,
),
(
when: Match("FSUUID", ""),
do: [Unset("FSUUID")],
),
// Create link aliases for block devices
(
when: All([
Match("ACTION", "add"),
Match("SUBSYSTEM", "block"),
Match("PARTUUID", ".+"),
]),
do: [Add("SYMLINKS", f("{DEVROOT}/disk/by-partuuid/{PARTUUID}"))],
),
(
when: All([
Match("ACTION", "add"),
Match("SUBSYSTEM", "block"),
Match("DISKSEQ", ".+"),
Match("DEVTYPE", "disk"),
]),
do: [Add("SYMLINKS", f("{DEVROOT}/disk/by-diskseq/{DISKSEQ}"))],
),
(
when: All([
Match("ACTION", "add"),
Match("SUBSYSTEM", "block"),
Match("FSUUID", ".+"),
]),
do: [Add("SYMLINKS", f("{DEVROOT}/disk/by-uuid/{FSUUID}"))],
),
(
when: All([
Match("ACTION", "add"),
Match("SUBSYSTEM", "block"),
Match("MAJOR", ".+"),
Match("MINOR", ".+"),
]),
do: [Add("SYMLINKS", f("{DEVROOT}/block/{MAJOR}:{MINOR}"))],
),
]