diff options
| author | Ophestra <cat@gensokyo.uk> | 2024-12-29 17:10:41 +0900 |
|---|---|---|
| committer | Ophestra <cat@gensokyo.uk> | 2024-12-29 17:10:41 +0900 |
| commit | 891b3cbde75c071b7339716d6fae727e26f19c0a (patch) | |
| tree | b1a5eb1555acc286ae2b667bf7f687c5429aa1b5 /cmd | |
| parent | c795293f3690ca6d91e898b72edd0a20b9708450 (diff) | |
cmd/fpkg: compare all three store paths
Signed-off-by: Ophestra <cat@gensokyo.uk>
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/fpkg/bundle.go | 4 | ||||
| -rw-r--r-- | cmd/fpkg/install.go | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/cmd/fpkg/bundle.go b/cmd/fpkg/bundle.go index eb3150bb..aa1eecdb 100644 --- a/cmd/fpkg/bundle.go +++ b/cmd/fpkg/bundle.go @@ -40,11 +40,11 @@ type bundleInfo struct { // allow gpu access within sandbox GPU bool `json:"gpu"` - // inner nix store path to activate-and-exec script + // store path to activate-and-exec script Launcher string `json:"launcher"` // store path to /run/current-system CurrentSystem string `json:"current_system"` - // home-manager activation package + // store path to home-manager activation package ActivationPackage string `json:"activation_package"` } diff --git a/cmd/fpkg/install.go b/cmd/fpkg/install.go index 793b953f..86c6ab25 100644 --- a/cmd/fpkg/install.go +++ b/cmd/fpkg/install.go @@ -97,7 +97,9 @@ func actionInstall(args []string) { if app != bundle { // do not try to re-install - if app.Launcher == bundle.Launcher { + if app.CurrentSystem == bundle.CurrentSystem && + app.Launcher == bundle.Launcher && + app.ActivationPackage == bundle.ActivationPackage { cleanup() fmsg.Printf("package %q is identical to local application %q", pkgPath, app.ID) fmsg.Exit(0) |
