Projekt von rust-template zu mac2ip umbenennen, Abhängigkeiten ergänzen

Cargo.toml/Cargo.lock: Paketname, Version, Beschreibung und Paketierungs-
Metadaten (deb/rpm/arch) auf mac2ip angepasst; neue Laufzeit-Abhängigkeiten
(tokio, turso, clap, serde, serde_json, thiserror) für die kommende
Implementierung ergänzt.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0118Wbg95ADSDynYfci2qUjK
This commit is contained in:
2026-09-13 18:28:10 +02:00
co-authored by Claude Sonnet 5
parent a250160451
commit 536f02368b
2 changed files with 3472 additions and 25 deletions
Generated
+3428 -2
View File
File diff suppressed because it is too large Load Diff
+44 -23
View File
@@ -1,15 +1,24 @@
[package]
name = "rust-template" # TODO: Projektnamen setzen
version = "0.0.0" # TODO: Initiale Version setzen (z. B. 0.1.0)
name = "mac2ip"
version = "0.1.0"
edition = "2024"
authors = ['DragonSlayer_14'] # TODO: Autor(en) anpassen
authors = ['DragonSlayer_14']
readme = "README.md"
license = "GPL-3.0-or-later" # TODO: Lizenz prüfen / anpassen
repository = "https://gitea.creative-dragonslayer.de/Linuxapps/rust-template" # TODO: Repository-URL anpassen
description = "" # TODO: Kurze Projektbeschreibung setzen
license = "GPL-3.0-or-later"
repository = "https://gitea.creative-dragonslayer.de/Linuxapps/Mac2Ip"
description = "Findet zuverlässig die aktuelle IP-Adresse zu einer MAC-Adresse im lokalen Netzwerk (Cache, ip neigh, nmap)"
[dependencies]
# TODO: Projektabhängigkeiten hier hinzufügen
config-ctdra = { version = "1.0.6", registry = "gitea" }
logger-ctdra = { version = "1.0.5", registry = "gitea" }
program-ctdra = { version = "1.0.1", registry = "gitea" }
sudo-ctdra = { version = "1.0.1", registry = "gitea" }
tokio = { version = "1", features = ["macros", "rt-multi-thread", "process", "time"] }
turso = "0.7"
clap = { version = "4", features = ["derive", "env"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
thiserror = "2"
[profile.release]
debug = "none"
@@ -17,28 +26,40 @@ debug = "none"
# --- Paketierungs-Metadaten für Linux-Distributionen ---
[package.metadata.deb]
name = "" # TODO: Optional (Standard: package.name)
maintainer = "" # TODO: Maintainer setzen (z. B. "Max Mustermann <max@example.com>")
copyright = "" # TODO: Copyright-Hinweis setzen (z. B. "2026 Max Mustermann")
section = "utils" # TODO: Debian-Sektion anpassen (z. B. utils, net, admin)
priority = "optional" # TODO: Debian-Priorität anpassen (z. B. optional)
depends = "$auto" # TODO: Abhängigkeiten definieren ($auto ermittelt via ldd automatisch)
name = "mac2ip"
maintainer = "DragonSlayer_14"
copyright = "2026 DragonSlayer_14"
section = "net"
priority = "optional"
depends = "$auto, sudo, iproute2, iputils-ping, nmap"
maintainer-scripts = "packaging/deb"
extended-description = """\
""" # TODO: Ausführliche Paketbeschreibung setzen
mac2ip ermittelt zuverlässig die aktuelle IP-Adresse zu einer gegebenen MAC-Adresse
im lokalen Netzwerk. Dazu wird zunächst ein globaler, systemweiter Cache geprüft,
danach die 'ip neigh'-Nachbartabelle (moderner Ersatz für 'arp'), und als letzter
Schritt ein nmap-Ping-/ARP-Scan der lokal angeschlossenen Subnetze durchgeführt.\
"""
assets = [
# TODO: Bei Bedarf zusätzliche Dateien / Assets definieren, z. B.:
# ["target/release/rust-template", "usr/bin/", "755"],
["target/release/mac2ip", "usr/bin/mac2ip", "755"],
["README.md", "usr/share/doc/mac2ip/README.md", "644"],
["LICENSE", "usr/share/doc/mac2ip/copyright", "644"],
]
[package.metadata.generate-rpm]
assets = [
# TODO: Bei Bedarf zusätzliche Dateien / Assets definieren, z. B.:
# { source = "target/release/rust-template", dest = "/usr/bin/rust-template", mode = "755" },
{ source = "target/release/mac2ip", dest = "/usr/bin/mac2ip", mode = "755" },
{ source = "README.md", dest = "/usr/share/doc/mac2ip/README.md", mode = "644", doc = true },
{ source = "LICENSE", dest = "/usr/share/licenses/mac2ip/LICENSE", mode = "644", license = true },
]
requires = { } # TODO: RPM-Abhängigkeiten definieren, z. B. { "glibc" = "*" }
requires = { "sudo" = "*", "iproute" = "*", "iputils" = "*", "nmap" = "*" }
post_install_script = """
mkdir -p /var/lib/mac2ip
chmod 0777 /var/lib/mac2ip
"""
[package.metadata.arch]
pkgrel = "1" # TODO: Standard Release-Nummer (wird in CI durch get-build-number.py dynamisch überschrieben)
arch = "x86_64" # TODO: Zielarchitektur (z. B. x86_64, aarch64, i686)
depends = ["gcc-libs", "glibc"] # TODO: Arch Linux Paketabhängigkeiten definieren
optdepends = [] # TODO: Optionale Abhängigkeiten definieren (z. B. ["curl: für Web-Downloads"])
pkgrel = "1"
arch = "x86_64"
depends = ["gcc-libs", "glibc", "sudo", "iproute2", "iputils", "nmap"]
optdepends = []
install_script = "packaging/arch/mac2ip.install"