From 064b6d0005fdd4665cd404abf4e415c707709804 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Sat, 16 Nov 2024 13:51:51 -0600 Subject: [PATCH] update docs and arch dropdown menu --- README.md | 41 +++++++++++++++++++++++++++++++---------- controlBox.go | 5 ++++- 2 files changed, 35 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 3daef9a..52916ff 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,38 @@ -# go-deb +# go-deb - package things to make it easier on everyone else -Makes a debian package from a go git repository +Makes a debian package from a go git repository, but also arbitrary things. -Usage (puts .deb in ~/incoming/) : +# Usage (puts the finished .deb file in ~/incoming/) : -* go-deb --auto --repo go.wit.com/apps/go-clone +* go-deb --auto --repo go.wit.com/apps/go-clone # just make the .deb file already +* go-deb ---repo go.wit.com/apps/go-clone # will try to open a gtk gui +* go-deb --repo . # can be used for packaging anything. looks for a 'control' and 'build' file -Notes +# examples/ -Make a 'control' file for the debian package. You can also make a custom 'build' script to run to place additional files in the debian package. Compiles go with ldflags for main.VERSION. +See the examples/ directory for custom 'control' and 'build' files for packaging arbitrary projects. -TODO: +# Notes -* Make the sources -* Make it compatible with debuild -* handle arches [amd64, any, arm64, armel, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x, source] +Make a 'control' file for the debian package. +You can also make a custom 'build' script to run to place additional files in the debian package. + + +.deb files are actually a smart and very simple file format based off of tar. This was +a smart design decision in the early days when, if things went wrong, your system +could break when updating things like glibc. This would mean that you couldn't even +figure out what is what. Having a very primitive file format is a bonus. That also +means, it is simple to make them! This can be non-intuitive however. This tool +tries to simpilfy that process. + +Basically a .deb file is based off of 'tar' and 'ar' (I can only assume 'ar' is a +precurser to tar, but I don't know for sure and will ask maddog!) + +Inside the .deb file are some control files and debian specific files and then +a tarball of all the files to extract. + +# Todo + +* make .rpm, gentoo, arch, etc file formats also +* make whatever the macos needs +* windows support I guess. golang needs plugin support on windows first. diff --git a/controlBox.go b/controlBox.go index 5f0b118..1a4416e 100644 --- a/controlBox.go +++ b/controlBox.go @@ -50,9 +50,12 @@ func newControl(parent *gui.Node) *controlBox { c.Architecture = gadgets.NewBasicDropdown(c.grid, "Architecture") c.Architecture.AddText("all") c.Architecture.AddText("riscv64") - c.Architecture.AddText("ppc64") c.Architecture.AddText("amd64") c.Architecture.AddText("arm64") + c.Architecture.AddText("ppc64") + c.Architecture.AddText("i386") + c.Architecture.AddText("sparc64") + c.Architecture.AddText("alpha") c.Architecture.SetText("riscv64") c.grid.NextRow()