Package Details: google-appengine-go 1.9.36-1

Git Clone URL: (read-only)
Package Base: google-appengine-go
Description: Google App Engine SDK for Go
Upstream URL:
Keywords: appengine go google
Licenses: Apache
Submitter: xyproto
Maintainer: None
Last Packager: icub3d
Votes: 29
Popularity: 0.595791
First Submitted: 2011-05-10 16:49
Last Updated: 2016-04-19 15:04

Latest Comments

xyproto commented on 2015-10-04 20:11

The wrapper scripts are in place in order to avoid conflicts with the other appengine packages.

velovix commented on 2015-05-23 03:39

Looks like the download link for 1.9.19 is broken. The current version is 1.9.21 and can be found here:

Anonymous comment on 2015-04-16 14:08

1.9.19 is released on 2015-04-13

Hexcles commented on 2015-03-19 21:00

1.9.18 is out

xyproto commented on 2015-01-09 10:59

Updated to 1.9.17. Just flagging the package as out-of-date when there is a new version (and with it, new hash sums) also works.

acp0112 commented on 2015-01-08 20:29




xyproto commented on 2014-11-07 10:28

Updated to 0.9.15.

vendion commented on 2014-11-05 15:00

Version 1.9.15 was released a couple of days ago.

Evert7 commented on 2014-10-27 19:03

Great! I'll try it out as soon as possible.

xyproto commented on 2014-10-27 14:08

Fixed the appcfg problem.

xyproto commented on 2014-10-27 13:13

Updated to 0.9.14.

xyproto commented on 2014-10-13 13:06

Thanks for flagging, will fix.

vendion commented on 2014-10-11 13:30

Getting a 404 when trying to build. It seems the correct URLS are

32 bit:
SHA1: ef7b67c15c8aac81668cc61806c5d594d36f2527

64 bit:
SHA1: aa67ac85debc1ea9e332ac7382850e81c385cc63

Also flagging as out of date as 1.9.13 is the latest version.

Evert7 commented on 2014-10-02 21:02

Doesn't work. Calling appcfg-go returns:
Traceback (most recent call last):
File "/opt/google-appengine-go/", line 126, in <module>
run_file(__file__, globals())
File "/opt/google-appengine-go/", line 122, in run_file
execfile(_PATHS.script_file(script_name), globals_)
IOError: [Errno 2] No such file or directory: '/opt/google-appengine-go/google/appengine/tools/'

xyproto commented on 2014-08-22 08:32

Updated to 1.9.9.

dmikalova commented on 2014-08-18 13:52

1.9.9 is out. SHA1sum for 64-bit is ffe770bd81f9fe1e1c3a83e9ebcf2a8c46ed0184.

codemac commented on 2014-08-11 20:43

1.9.8 is available.

GutenYe commented on 2014-07-14 04:51

after install, how to use it?

tommie commented on 2014-07-13 20:17

Modified the build script to suit my needs and wanted to share:

General cleanups and trying to change as little as possible from the original zip file. Whether I'll need the other executables or not is something for the future. :)

xyproto commented on 2014-06-10 19:16

Updated to 1.9.6.

xyproto commented on 2014-05-20 18:12

Updated to 1.9.4. Removed the symbolic link so that files are placed in /usr/lib/python2.7/site-packages/google directly instead. Checked with python2-protobuf, and there are no file conflicts. If you know about python2 packages that has file conflicts with this one, please let me know, and I'll try to fix it (or add the offending package to the conflicts=() array in the PKGBUILD). Thanks.

swdunlop commented on 2014-05-13 23:45

Upstream has released 1.9.4. Also, the symbolic link created here:

ln -s "/opt/$pkgname/google" "$pkgdir/usr/lib/python2.7/site-packages/google"

Conflicts with python2-protobuf and probably other python packages originating with Google. Not sure what the best choice -- either add an extra PYTHONPATH entry, move these files to site-packages/google from /opt/$pkgname/google; I went for the former out of expedience.

xyproto commented on 2014-04-13 17:37

Updated to 1.9.2.

xyproto commented on 2014-02-26 18:10

Updated the package.

xyproto commented on 2014-02-26 18:07

Thanks for noticing, Andares. I will add 'staticlibs' so that .a files are included again.

(Just out of curiosity, when are they needed?)

Andares commented on 2014-02-22 08:51

It looks like makepkg recently added "!staticlibs" to the default OPTIONS for packages. This causes all of the .a files to be stripped out of $(GOROOT)/pkg/$(ARCH), which prevents the package from working.

The fix:
options=('!strip' 'staticlibs')
on line 13 of the PKGBUILD.

Thanks to Addle on #archlinux for pointing this out to me.

xyproto commented on 2014-01-23 14:49

Updated to 1.8.9.

xyproto commented on 2014-01-17 13:41

Thanks for noticing, cryptix. Fixed.

cryptix commented on 2014-01-16 17:23

goapp, godoc and gofmt are missing the executable flag.

cryptix commented on 2014-01-16 17:23

There seems to be a missing chmod +x for goapp, godoc and gofmt.

xyproto commented on 2013-11-30 19:29

Updated to 1.8.8.

xyproto commented on 2013-10-31 11:01

Updated to 1.8.6.

xyproto commented on 2013-09-26 11:59

Updated to 1.8.5.

xyproto commented on 2013-09-11 12:21

Updated to 1.8.4.

xyproto commented on 2013-08-06 21:16

Great! :)

Anonymous comment on 2013-08-06 21:07


I pass through the error I had about sort.Reverse (which is part of the Go1.1 API) to get an error from my own code so seems like it ! :)

Thanks a lot

xyproto commented on 2013-08-06 19:59

Updated the package to 1.8.3.

@Natsirtt Does it work for you now? If not, please specify which steps can be taken to reproduce the problem.

Anonymous comment on 2013-08-06 10:50

Hey ! I'm using this package and my current dev server cannot run Go 1.1 features while the online appengine server does for some time now. Is it because this package is out of date or am I doing something wrong ?

If it actually is the package problem, will it be updated ?

Thanks :)

graysky commented on 2013-07-03 17:51

% makepkg -s
==> Making package: google-appengine-go 1.8.1-1 (Wed Jul 3 13:50:51 EDT 2013)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Found
ln: failed to create symbolic link ‘/mnt/scratch/google-appengine-go/src/’: Read-only file system
==> Validating source files with sha256sums... ... Passed
==> Extracting sources...
==> Starting prepare()...
unzip: cannot find or open, or
==> ERROR: A failure occurred in prepare().

graysky commented on 2013-07-03 17:48

==> Extracting sources...
==> Starting prepare()...
unzip: cannot find or open, or
==> ERROR: A failure occurred in prepare().

xyproto commented on 2013-06-19 14:53

Updated the package to 1.8.1

xyproto commented on 2013-05-26 10:11

Thanks Evert7, will create site/src as well.

Evert7 commented on 2013-05-25 20:32

I think it needs the directory '/usr/lib/go/site/src' to be created as well. I had several errors which were fixed with after creating that directory.

xyproto commented on 2013-05-09 16:48

Updated to 1.8.0

xyproto commented on 2013-03-25 13:24

Thanks schultzer, updated to
Also updated the go package to create /usr/lib/go/site.

schultzter commented on 2013-03-24 03:31

Is this building the version? There seem to be some issues with the original 1.7.6 release.


Also, in-order to get it to even start I had to create the directory /usr/lib/go/site. I'm not sure where that directory is supposed to come from.

schultzter commented on 2013-03-24 02:55

Is this building the version? There seem to be some issues with the original 1.7.6 release.


Also, in-order to get it to even start I had to create the directory /usr/lib/go/site. I'm not sure where that directory is supposed to come from.

xyproto commented on 2013-03-20 17:12

If the current naming works for you, then great. Updated to 1.7.6, thanks for notifying.

schultzter commented on 2013-03-20 03:00

So now that I better understand what you're doing and not comparing it to what I did with Slackware anymore I think way you've got it setup (with scripts in /usr/bin) is a fine way to do things.

I humbly retract my suggestion to add the "official" tools in the path.

Especially now that I have the Python SDK installed as well (because of experimenting with tailbone.js).

xyproto commented on 2013-03-19 16:45

A question: Would you guys rather have the "official" names of the .py scripts in the path (and that it conflicts with the other appengine packages), or keep it like it is right now?

xyproto commented on 2013-03-19 11:47

Updated the package to 1.7.5.

xyproto commented on 2013-03-19 10:44

schultzer, I didn't notice that this package was out of date. Please use the "Flag package out-of-date" button if this should happen again in the future. Thanks.

schultzter commented on 2013-03-19 02:12

Just curious when you're going to update this to 1.7.5? They added multi-tenancy and it's something I think I need for the project I'm working on. Thanks,

xyproto commented on 2013-03-03 23:51

Yes, the name conflicts with the other appengine packages is a problem. I wish Google had a suggestion for resolving that as well. Currently, all the script files like "", in this package, has an equivivalent name like "/usr/bin/api_server-go".

Run this command for a full overview:
pacman -Ql google-appengine-go | grep usr/bin/.

schultzter commented on 2013-02-20 02:54

Something else I might suggest adding to the PKGBUILD is an entry in /etc/profile.d to put the GAE tools in the path. I did this when I maintained the SlackBuild for Slackware.

I don't know if this is the right way to do in a PKGBUILD but I added the following lines to end of the package() function:
msg2 "Creating profile.d script to add GAE commands to path..."
mkdir -p "$pkgdir/etc/profile.d"
echo "export PATH=\$PATH:/opt/$pkgname" > "$pkgdir/etc/profile.d/"
chmod +x "$pkgdir/etc/profile.d/"

This is suggested by Google, see

There's a major caveat to doing this though, the App Engine Python SDK uses the same names for their utilities but they're not compatible with the Go SDK. So if you install both you have to decide which one you want in the PATH and which one you'll call with a full path.

xyproto commented on 2013-02-16 12:17

Thanks for the fix, schultzer. Updated the package.

schultzter commented on 2013-02-16 04:19

The package only really works on 64-bit (x86_64 or amd64) systems because the fix for permissions is looking for the amd64 sub-directory.

In the PKGBUILD I replaced the line:
chmod +x "$pkgdir/opt/$pkgname/goroot/pkg/tool/linux_amd64/"*

With these lines:
if [ $CARCH != "i686" ]; then
chmod +x "$pkgdir/opt/$pkgname/goroot/pkg/tool/linux_amd64/"*
chmod +x "$pkgdir/opt/$pkgname/goroot/pkg/tool/linux_386/"*

And then it worked on my 32-bit system.

xyproto commented on 2012-12-30 14:12

Allright, added two optional dependencies. Thanks for noticing, sinatosk.

sinatosk commented on 2012-12-27 20:06


2 packages in the official repository

I noticed 2 warnings after starting the server

WARNING 2012-12-27 19:55:57,784] The rdbms API is not available because the MySQLdb library could not be loaded.


WARNING 2012-12-27 19:56:16,168] Could not initialize images API; you are likely missing the Python "PIL" module. ImportError: No module named _imaging

but after installing packages "mysql-python" and "python2-imaging"

the errors are gone

suggestion: make these 2 packages optional dependencies

xyproto commented on 2012-12-18 20:25

Thanks t-8ch, updated to 1.7.4.

xyproto commented on 2012-10-14 19:49

Updated to 1.7.2.

xyproto commented on 2012-09-04 21:34

Updated to 1.7.1. Thanks for the fix, fuzymonkey.

xyproto commented on 2012-08-15 21:37

Updated to 1.7.0.

xyproto commented on 2012-07-16 11:50

Updated the package. Thanks for your patience and thanks sorcix and fuzymonkey.

xyproto commented on 2012-07-16 11:48

Updated the package. Sorry it took a few days. Thanks sorcix and fuzymonkey.

fuzymonkey commented on 2012-07-13 00:32


sudo find /opt/google-appengine-go -type d -exec chmod 755 {} \;
sudo chmod +x /opt/google-appengine-go/goroot/pkg/tool/linux_amd64/*

To fix the current permission issues with the package.

sorcix commented on 2012-07-04 16:11

Permissions are wrong when I install this package, only root can use the scripts.

xyproto commented on 2012-05-22 22:02

Updated to 1.6.6.

xyproto commented on 2012-04-26 11:23

Updated to 1.6.5. Added workaround for extracting with unzip instead of bsdtar because the zip is broken.

xyproto commented on 2012-04-21 08:15

Updated to 1.6.4

xyproto commented on 2012-03-22 09:29

Updated to 1.6.3

xyproto commented on 2012-02-07 10:57

Updated to 1.6.2

xyproto commented on 2011-12-26 12:38

Updated to 1.6.1

xyproto commented on 2011-11-08 17:47

Updated to 1.6.0

xyproto commented on 2011-10-12 10:22

Updated to 1.5.5.

xyproto commented on 2011-09-13 08:10

dotmagic, thanks. Updated the package to 1.5.4.

dotmagic commented on 2011-09-13 07:09

There is a new release of the SDK available.

xyproto commented on 2011-09-05 08:50

Updated the PKGBUILD, patched the .py files to use python2 as well.

xyproto commented on 2011-08-29 20:00

No worries. I will patch the .py files too, probably tomorrow.

sorcix commented on 2011-08-29 17:05

Yes, those work. I'm sorry, I misread your question.

xyproto commented on 2011-08-29 16:52

sorcix, so the scripts in /usr/bin does work on your system, unlike what you wrote earlier? ("No, they didn't work" in response to "Doesn't the scripts in /usr/bin work for you?")
Your wish for patching the .py files has been noted.

sorcix commented on 2011-08-29 15:26

yeah, I prefer to use the scripts that come with the package.

I use both python and go for appengine. It's less confusing when I simply cd to the directory of the SDK I want to use. Then use ./ or ./ without worrying about whether I have to use, appcfg-go, or appserver..

xyproto commented on 2011-08-29 15:07

sorcix, if you check the scripts that comes with this package, like /usr/bin/appserver, you will notice that they do indeed use python2. Do you have a reason for wanting to use the ".py" files instead of the scripts in /usr/bin?

xyproto commented on 2011-08-29 15:05

sorcix, if you check the scripts that comes with this package, like /usr/bin/appserver, you will notice that they do indeed use python2.

sorcix commented on 2011-08-29 09:46

Trontonic: No, they didn't work.

If you check the filelist for the "python2" dependency, you'll notice that the binary is /usr/bin/python2. The scripts in this package try to use /usr/bin/python, which is python3 on arch.

xyproto commented on 2011-07-30 17:47

Updated to 1.5.2.

sorcix, doesn't the scripts in /usr/bin work for you? If that's the case, I can patch the corresponding .py files with sed in the PKGBUILD.

sorcix commented on 2011-07-12 10:44

I had to change the first lines of and to use Python 2.

xyproto commented on 2011-05-18 11:40

Updated the package. Thanks for the suggestion, coverslide.

coverslide commented on 2011-05-11 23:40

Maybe add this to have the scripts accessible from the shell:

for i in $pkgdir/opt/google-appengine-go/*.py;do
script=`basename $i .py`
echo -e "#!/bin/sh\npython2 $i $*" > $pkgdir/usr/bin/go-$script;
chmod a+x $pkgdir/usr/bin/go-$script

coverslide commented on 2011-05-11 23:37

Maybe add this to have the scripts accessible from the shell:

for i in $pkgdir/opt/google-appengine-go/*.py;do
script=`basename $i .py`
echo -e "#!/bin/sh\npython2 $i *?" > $pkgdir/usr/bin/go-$script;
chmod a+x $pkgdir/usr/bin/go-$script

coverslide commented on 2011-05-11 23:25

Maybe add this to have the scripts accessible from the shell:

for i in $pkgdir/opt/google-appengine-go/*.py;do
script=`basename $i .py`
echo -e "#!/bin/sh\npython2 $i" > $pkgdir/usr/bin/go-$script;
chmod a+x $pkgdir/usr/bin/go-$script