diff --git a/.gitignore b/.gitignore index 91d33d10..fb67d573 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,9 @@ RELEASE deb lib/auto/gui.files.go snapcraft.yaml +prime/ +snap/ +parts/ +stage/ +*.snap +*.bz2 diff --git a/build.go b/build.go index 3db31c0a..dc7b9987 100644 --- a/build.go +++ b/build.go @@ -618,6 +618,8 @@ func buildSnap(target target) { snaparch := goarch if snaparch == "armhf" { goarch = "arm" + } else if snaparch == "i386" { + goarch = "386" } snapver := version if strings.HasPrefix(snapver, "v") { @@ -628,9 +630,10 @@ func buildSnap(target target) { snapgrade = "stable" } err = tmpl.Execute(f, map[string]string{ - "Version": snapver, - "Architecture": snaparch, - "Grade": snapgrade, + "Version": snapver, + "HostArchitecture": runtime.GOARCH, + "TargetArchitecture": snaparch, + "Grade": snapgrade, }) if err != nil { log.Fatal(err) diff --git a/snapcraft.yaml.template b/snapcraft.yaml.template index 0b9783f0..a07b58e0 100644 --- a/snapcraft.yaml.template +++ b/snapcraft.yaml.template @@ -6,15 +6,24 @@ description: | trustworthy and decentralized. Your data is your data alone and you deserve to choose where it is stored, if it is shared with some third party and how it's transmitted over the Internet. -architectures: [{{.Architecture}}] +architectures: + - build-on: [{{.HostArchitecture}}] + run-on: [{{.TargetArchitecture}}] grade: {{.Grade}} confinement: strict apps: syncthing: - command: env HOME="$SNAP_USER_COMMON" XDG_CONFIG_HOME="$SNAP_USER_COMMON" "$SNAP/syncthing" - plugs: [home, network, network-bind] + command: syncthing + environment: + HOME: ${SNAP_USER_COMMON} + XDG_CONFIG_HOME: ${SNAP_USER_COMMON} + plugs: + - home + - network + - network-bind + - removable-media parts: syncthing: