diff --git a/.gitignore b/.gitignore index 91d33d107..fb67d5733 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 3db31c0a9..dc7b99877 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 0b9783f04..a07b58e00 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: