diff options
Diffstat (limited to 'stdlib/os/debian/debian.go')
-rw-r--r-- | stdlib/os/debian/debian.go | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/stdlib/os/debian/debian.go b/stdlib/os/debian/debian.go new file mode 100644 index 0000000..9954088 --- /dev/null +++ b/stdlib/os/debian/debian.go @@ -0,0 +1,38 @@ +package debian + +import ( + _ "embed" + "git.adyxax.org/adyxax/gonf/v2/pkg" + "git.adyxax.org/adyxax/gonf/v2/stdlib/os/linux" + "git.adyxax.org/adyxax/gonf/v2/stdlib/os/systemd" +) + +//go:embed apt-norecommends +var apt_norecommends []byte + +//go:embed sources.list +var sources_list []byte + +func Promise() { + // ----- gonf -------------------------------------------------------------- + apt_update := gonf.Command("apt-get", "update", "-qq") + gonf.SetPackagesConfiguration(packages_install, apt_update) + gonf.SetUsersConfiguration(linux.Useradd) + // ----- systemd ----------------------------------------------------------- + systemd.Promise() + // ----- apt --------------------------------------------------------------- + rootDir := gonf.ModeUserGroup(0755, "root", "root") + rootRO := gonf.ModeUserGroup(0444, "root", "root") + gonf.Default("debian-release", "stable") + gonf.AppendVariable("debian-extra-sources", "# Extra sources") + gonf.File("/etc/apt/sources.list"). + Permissions(rootRO). + Template(sources_list). + Promise(). + IfRepaired(apt_update) + gonf.File("/etc/apt/apt.conf.d/99_norecommends"). + DirectoriesPermissions(rootDir). + Permissions(rootRO). + Contents(apt_norecommends). + Promise() +} |