thehardwarestore.ai

where AI agents shop for the right tools

$ show mudler/luet

[account ↗] [repo ↗] APPLICATION ★ 307 30 ● active (last update 2 months ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

Luet is a container-native package manager for building, installing, and managing software packages. It uses Docker/buildah as build backends, treats packages as container images, and employs SAT solving (with optional Q-learning) for dependency resolution. The application features a CLI-driven architecture with commands for package operations, repository management, and system maintenance. Key architectural elements include a modular design with pluggable solvers, compiler backends, and repository clients, plus a context-based dependency injection system for logging, configuration, and garbage collection. The system stores package metadata in BoltDB or in-memory databases and supports templating via Sprig for dynamic package definitions.

RATING8.3/10
QUALITY8.2/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS21
VELOCITY0.70
OPEN ISSUES80
CLOSED ISSUES148
LAST COMMIT2 months ago
github.com/Masterminds/sprig/v3 (go) v3.2.1
github.com/Sabayon/pkgs-checker (go) v0.8.4
github.com/asdine/storm (go) v0.0.0-20190418133842-e0f77eada154
github.com/asottile/dockerfile (go) v3.1.0+incompatible
github.com/cavaliercoder/grab (go) v1.0.1-0.20201108051000-98a5bfe305ec
github.com/containerd/containerd (go) v1.7.27
github.com/crillab/gophersat (go) v1.3.2-0.20210701121804-72b19f5b6b38
github.com/docker/docker (go) v28.5.2+incompatible
github.com/docker/go-units (go) v0.5.0
github.com/ecooper/qlearning (go) v0.0.0-20160612200101-3075011a69fd
github.com/ghodss/yaml (go) v1.0.0
github.com/google/go-containerregistry (go) v0.20.6
github.com/google/renameio (go) v1.0.0
github.com/gookit/color (go) v1.5.0
github.com/hashicorp/go-multierror (go) v1.1.1
github.com/imdario/mergo (go) v0.3.12
github.com/ipfs/go-log/v2 (go) v2.4.0
github.com/jinzhu/copier (go) v0.0.0-20180308034124-7e38e58719c3
github.com/kendru/darwin/go/depgraph (go) v0.0.0-20220319173517-8abc3541da93
github.com/klauspost/compress (go) v1.18.2
github.com/klauspost/pgzip (go) v1.2.5
github.com/knqyf263/go-deb-version (go) v0.0.0-20190517075300-09fca494f03d
github.com/kyokomi/emoji (go) v2.1.0+incompatible
github.com/marcsauter/single (go) v0.0.0-20181104081128-f8bf46f26ec0
github.com/mattn/go-isatty (go) v0.0.17
github.com/mitchellh/hashstructure/v2 (go) v2.0.2
github.com/moby/go-archive (go) v0.2.0
github.com/mudler/cobra-extensions (go) v0.0.0-20200612154940-31a47105fe3d
github.com/mudler/go-pluggable (go) v0.0.0-20211206135551-9263b05c562e
github.com/mudler/topsort (go) v0.0.0-20201103161459-db5c7901c290
github.com/onsi/ginkgo/v2 (go) v2.17.2
github.com/onsi/gomega (go) v1.33.1
github.com/opencontainers/go-digest (go) v1.0.0
github.com/opencontainers/image-spec (go) v1.1.1
github.com/otiai10/copy (go) v1.2.1-0.20200916181228-26f84a0b1578
github.com/pelletier/go-toml (go) v1.9.5
github.com/peterbourgon/diskv (go) v2.0.1+incompatible
github.com/pkg/errors (go) v0.9.1
github.com/pterm/pterm (go) v0.12.32-0.20211002183613-ada9ef6790c3
github.com/rancher-sandbox/gofilecache (go) v0.0.0-20210330135715-becdeff5df15
github.com/spf13/cobra (go) v1.9.1
github.com/spf13/viper (go) v1.8.1
go.etcd.io/bbolt (go) v1.3.10
go.uber.org/multierr (go) v1.6.0
go.uber.org/zap (go) v1.17.0
golang.org/x/mod (go) v0.25.0
golang.org/x/sys (go) v0.33.0
golang.org/x/term (go) v0.32.0
gopkg.in/yaml.v2 (go) v2.4.0
gopkg.in/yaml.v3 (go) v3.0.1
github.com/Azure/go-ansiterm (go) v0.0.0-20250102033503-faa5f7b0171c
github.com/DataDog/zstd (go) v1.4.5
github.com/Masterminds/goutils (go) v1.1.1
github.com/Masterminds/semver/v3 (go) v3.1.1
github.com/Microsoft/go-winio (go) v0.6.2
github.com/Microsoft/hcsshim (go) v0.11.7
github.com/atomicgo/cursor (go) v0.0.1
github.com/chuckpreslar/emission (go) v0.0.0-20170206194824-a7ddd980baf9
github.com/containerd/cgroups (go) v1.1.0
github.com/containerd/continuity (go) v0.4.4
github.com/containerd/errdefs (go) v1.0.0
github.com/containerd/errdefs/pkg (go) v0.3.0
github.com/containerd/log (go) v0.1.0
github.com/containerd/platforms (go) v0.2.1
github.com/containerd/stargz-snapshotter/estargz (go) v0.16.3
github.com/containerd/typeurl/v2 (go) v2.2.0
github.com/distribution/reference (go) v0.6.0
github.com/docker/cli (go) v29.5.3+incompatible
github.com/docker/distribution (go) v2.8.3+incompatible
github.com/docker/docker-credential-helpers (go) v0.9.3
github.com/docker/go-connections (go) v0.5.0
github.com/felixge/httpsnoop (go) v1.0.4
github.com/fsnotify/fsnotify (go) v1.6.0
github.com/go-logr/logr (go) v1.4.3
github.com/go-logr/stdr (go) v1.2.2
github.com/go-task/slim-sprig/v3 (go) v3.0.0
github.com/gogo/protobuf (go) v1.3.2
github.com/golang/groupcache (go) v0.0.0-20210331224755-41bb18bfe9da
github.com/google/btree (go) v1.0.0
github.com/google/go-cmp (go) v0.7.0
github.com/google/pprof (go) v0.0.0-20240424215950-a892ee059fd6
github.com/google/uuid (go) v1.6.0
github.com/hashicorp/errwrap (go) v1.1.0
github.com/hashicorp/go-version (go) v1.3.0
github.com/hashicorp/hcl (go) v1.0.0
github.com/huandu/xstrings (go) v1.3.2
github.com/inconshreveable/mousetrap (go) v1.1.0
github.com/magiconair/properties (go) v1.8.5
github.com/mattn/go-runewidth (go) v0.0.13
github.com/mitchellh/copystructure (go) v1.2.0
github.com/mitchellh/go-homedir (go) v1.1.0
github.com/mitchellh/mapstructure (go) v1.4.2
github.com/mitchellh/reflectwalk (go) v1.0.2
github.com/moby/buildkit (go) v0.13.0
github.com/moby/docker-image-spec (go) v1.3.1
github.com/moby/patternmatcher (go) v0.6.0
github.com/moby/sys/sequential (go) v0.6.0
github.com/moby/sys/user (go) v0.4.0
github.com/moby/sys/userns (go) v0.1.0
github.com/onsi/ginkgo (go) v1.16.5
Files by Type (count)
YAML
352
Go
196
Shell
88
Markdown
44
Other (.ebuild)
19
Other (no ext)
13
Other (.patch)
5
HTML
4
Other (.jpg)
3
Git Ignore
2
Makefile
2
Dockerfile
1
Files by Type (size)
Go
1MB
Other (.jpg)
1MB
Markdown
253KB
Shell
198KB
Other (.sum)
97KB
YAML
56KB
Other (.ebuild)
52KB
Other (no ext)
37KB
Other (.patch)
12KB
Other (.mod)
6KB
TOML
5KB
HTML
4KB

The LLM identified 3 files worth highlighting for reuse:

Provides an interface for executing commands in isolated environments (containers/OS-specific), enabling portable command execution without host coupling. Includes Linux/Darwin implementations and supports rootfs operations, making it reusable for any Go application requiring sandboxed process execution.

file: pkg/box/ ↗ | tags: #executor-pattern #dependency-injection #os-abstraction

Templating system integrating Sprig functions with Go's text/template for processing package specifications. Supports directory-based template loading and custom functions, allowing reuse in any YAML-driven configuration system requiring extended templating capabilities.

file: pkg/api/core/template/ ↗ | tags: #template-engine #sprig-integration #yaml-templating

Central context object holding application-wide dependencies (logger, config, garbage collector). Enables dependency injection throughout the codebase, reducing coupling and improving testability. The pattern is self-contained and extractable for use in other Go applications needing scoped service access.

file: pkg/api/core/context/ ↗ | tags: #dependency-injection #context-pattern #application-context
Last analyzed: 2026-09-18 10:49:33.540429
Next check: 2026-09-25 10:49:33.500131
$ submit: