diff --git a/cmd/fpkg/bundle.go b/cmd/fpkg/bundle.go index eb3150b..aa1eecd 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 793b953..86c6ab2 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)