Skip to content

Releases: tianon/gosu

1.9

11 May 04:58

Choose a tag to compare

1.9
  • fix cross-compilation of official binaries (#19)

4096R / B42F 6819 007F 00F8 8E36 4FD4 036A 9C25 BF35 7DD4

$ arch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"
$ wget -O gosu "https://github.com/tianon/gosu/releases/download/1.9/gosu-$arch"
$ chmod +x gosu
$ ./gosu
Usage: ./gosu user-spec command [args]
   ie: ./gosu tianon bash
       ./gosu nobody:root bash -c 'whoami && id'
       ./gosu 1000:1 id

./gosu version: 1.9 (go1.6.2 on linux/amd64; gc)

1.8

19 Apr 17:00

Choose a tag to compare

1.8
  • build against Go 1.6
  • add -s and -w to -ldflags so that release binaries are even smaller (~2.6M down to ~1.8M)
  • add simple integration test suite

4096R / B42F 6819 007F 00F8 8E36 4FD4 036A 9C25 BF35 7DD4

$ curl -o gosu -fsSL "https://github.com/tianon/gosu/releases/download/1.8/gosu-$(dpkg --print-architecture)"
$ chmod +x gosu
$ ./gosu
Usage: ./gosu user-spec command [args]
   ie: ./gosu tianon bash
       ./gosu nobody:root bash -c 'whoami && id'
       ./gosu 1000:1 id

./gosu version: 1.8 (go1.6.1 on linux/amd64; gc)

Update: binaries had to be pulled; for details, see #19 (and 1.9)

1.7

08 Nov 21:05

Choose a tag to compare

1.7
  • update to use github.com/opencontainers/runc/libcontainer instead of github.com/docker/libcontainer
  • add arm64, ppc64, and ppc64le to cross-compiled official binaries

4096R / B42F 6819 007F 00F8 8E36 4FD4 036A 9C25 BF35 7DD4

$ curl -o gosu -fsSL "https://github.com/tianon/gosu/releases/download/1.7/gosu-$(dpkg --print-architecture)"
$ chmod +x gosu
$ ./gosu
Usage: ./gosu user-spec command [args]
   ie: ./gosu tianon bash
       ./gosu nobody:root bash -c 'whoami && id'
       ./gosu 1000:1 id

./gosu version: 1.7 (go1.5.1 on linux/amd64; gc)

1.6

06 Oct 16:59

Choose a tag to compare

1.6
  • revert fchown(2) all open file descriptors; turns out that's NOT OK (see discussion #8 for details)

4096R / B42F 6819 007F 00F8 8E36 4FD4 036A 9C25 BF35 7DD4

$ curl -o gosu -sSL "https://github.com/tianon/gosu/releases/download/1.6/gosu-$(dpkg --print-architecture)"
$ chmod +x gosu
$ ./gosu
Usage: ./gosu user-spec command [args]
   ie: ./gosu tianon bash
       ./gosu nobody:root bash -c 'whoami && id'
       ./gosu 1000:1 id

./gosu version: 1.6 (go1.5.1 on linux/amd64; gc)

1.5

25 Sep 23:40

Choose a tag to compare

1.5
  • build against Go 1.5
  • fchown(2) all open file descriptors before switching users so that they can be used appropriately by the user we're switching to

4096R / B42F 6819 007F 00F8 8E36 4FD4 036A 9C25 BF35 7DD4

$ curl -o gosu -sSL "https://github.com/tianon/gosu/releases/download/1.5/gosu-$(dpkg --print-architecture)"
$ chmod +x gosu
$ ./gosu
Usage: ./gosu user-spec command [args]
   ie: ./gosu tianon bash
       ./gosu nobody:root bash -c 'whoami && id'
       ./gosu 1000:1 id

./gosu version: 1.5 (go1.5.1 on linux/amd64; gc)

1.4

20 Apr 17:39

Choose a tag to compare

1.4

4096R / B42F 6819 007F 00F8 8E36 4FD4 036A 9C25 BF35 7DD4

$ curl -o gosu -sSL "https://github.com/tianon/gosu/releases/download/1.4/gosu-$(dpkg --print-architecture)"
$ chmod +x gosu
$ ./gosu
Usage: ./gosu user-spec command [args]
   ie: ./gosu tianon bash
       ./gosu nobody:root bash -c 'whoami && id'
       ./gosu 1000:1 id

./gosu version: 1.4 (go1.4.2 on linux/amd64; gc)

1.3

24 Mar 19:20

Choose a tag to compare

1.3
  • golang:1.4
  • always set HOME (#3)

4096R / B42F 6819 007F 00F8 8E36 4FD4 036A 9C25 BF35 7DD4

$ curl -o gosu -sSL "https://github.com/tianon/gosu/releases/download/1.3/gosu-$(dpkg --print-architecture)"
$ chmod +x gosu
$ ./gosu
Usage: ./gosu user-spec command [args]
   ie: ./gosu tianon bash
       ./gosu nobody:root bash -c 'whoami && id'
       ./gosu 1000:1 id

./gosu version: 1.3 (go1.4.2 on linux/amd64; gc)

1.2

19 Nov 08:04

Choose a tag to compare

1.2
$ curl -o gosu -sSL "https://github.com/tianon/gosu/releases/download/1.2/gosu-$(dpkg --print-architecture)"
$ chmod +x gosu
$ ./gosu
Usage: ./gosu user-spec command [args]
   ie: ./gosu tianon bash
       ./gosu nobody:root bash -c 'whoami && id'
       ./gosu 1000:1 id

./gosu version: 1.2 (go1.3.3 on linux/amd64; gc)

1.1

14 Jul 19:56

Choose a tag to compare

1.1
  • add LockOSThread and explicit GOMAXPROCS to ensure even more explicitly that we're running in the same thread for the duration
  • add better version output (including compilation info)
  • build against Go 1.3 (via tianon/golang and the new Dockerfile+build.sh)
$ ./gosu
Usage: ./gosu user-spec command [args]
   ie: ./gosu tianon bash
       ./gosu nobody:root bash -c 'whoami && id'
       ./gosu 1000:1 id

./gosu version: 1.1 (go1.3 on linux/amd64; gc)

1.0

02 Jun 19:44

Choose a tag to compare

1.0
add VERSION constant (and put it in the usage output)