Package Details: gcalcli 4.3.0-2

Git Clone URL: (read-only, click to copy)
Package Base: gcalcli
Description: Google calendar command line interface
Upstream URL:
Licenses: MIT
Submitter: None
Maintainer: ainola
Last Packager: ainola
Votes: 121
Popularity: 0.94
First Submitted: 2007-10-03 21:45 (UTC)
Last Updated: 2021-01-30 23:12 (UTC)

Latest Comments

samueldy commented on 2021-12-30 18:55 (UTC)

Want to mention that I needed to cleanbuild after system Python was upgraded to 3.10.

ainola commented on 2021-01-30 23:13 (UTC)

suffer: Shame on me! Thanks for pointing that out. :)

suffer commented on 2021-01-27 16:05 (UTC)

I just noticed that you install docs to /usr/share/docs. It should be /usr/share/doc per Arch package guidelines.

duffydack commented on 2020-09-29 18:57 (UTC)

Seems an update to python-google-auth causes an issue running.

File "/usr/lib/python3.8/site-packages/pkg_resources/", line 770, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'aiohttp<4.0.0dev,>=3.6.2' distribution was not found and is required by google-auth

Installed python-aiohttp fixed the issue, so I guess it needs to be added as a dep.

firecat53 commented on 2020-03-30 01:16 (UTC)

Installing python-google-api-core fixed the errors that were popping up today after python-google-api-python-client updated from 1.7.11-4 -> 1.8.0-1.

ainola commented on 2019-05-27 14:27 (UTC)

It looks like you've got a local install of packages. You might want to clean it up; oauth2client1412 hasn't been used in some time.

dilawars commented on 2019-05-27 04:27 (UTC)

Probably a missing dependency?

[dilawars@chamcham ~]$ gcalcli remind
Traceback (most recent call last):
  File "/home1/dilawars/.local/lib/python3.7/site-packages/oauth2client/", line 283, in new_from_json
    m = __import__(module)
ModuleNotFoundError: No module named 'oauth2client1412'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/gcalcli", line 11, in <module>
    load_entry_point('gcalcli==4.1.0', 'console_scripts', 'gcalcli')()
  File "/usr/lib/python3.7/site-packages/gcalcli/", line 147, in main
    cal_names=cal_names, printer=printer, **vars(parsed_args)
  File "/usr/lib/python3.7/site-packages/gcalcli/", line 66, in __init__
  File "/usr/lib/python3.7/site-packages/gcalcli/", line 193, in _get_cached
  File "/usr/lib/python3.7/site-packages/gcalcli/", line 157, in get_cal_service
  File "/usr/lib/python3.7/site-packages/gcalcli/", line 135, in _google_auth
    credentials = storage.get()
  File "/home1/dilawars/.local/lib/python3.7/site-packages/oauth2client/", line 374, in get
    return self.locked_get()
  File "/home1/dilawars/.local/lib/python3.7/site-packages/oauth2client/", line 79, in locked_get
    credentials = Credentials.new_from_json(content)
  File "/home1/dilawars/.local/lib/python3.7/site-packages/oauth2client/", line 287, in new_from_json
    m = __import__(module)
ModuleNotFoundError: No module named 'oauth2client1412'
[dilawars@chamcham ~]$ 

ainola commented on 2019-05-17 14:44 (UTC)

Thanks, guludo. Fixed.

guludo commented on 2019-05-16 13:45 (UTC)

man gcalcli was not working. I had to edit the PKGBUILD and remove the line sed -i 's;man/man1;share/man/man1;' "gcalcli-$pkgver/" from prepare().

jfhbrook commented on 2019-03-29 00:38 (UTC)

An issue I had was that python in my local environment usually resolves to /home/josh/anaconda3/bin/python (intentionally), so I had to hard-code the paths to /usr/bin/python to get this package to install correctly.

ainola commented on 2018-11-16 15:20 (UTC)

The update to 4.0.0a4 may require one to delete ~/.gcalcli_* and re-authenticate.

yan12125 commented on 2018-11-16 12:34 (UTC)

I don't think this package will move away from python2-oauth2client* until upstream moves away from oauth2client. Anyway it looks like the latest git-master works with community/python2-oauth2client, so it might be reasonable to update this package to a recent commit and change python2-oauth2client1412 to python2-oauth2client.

gerson commented on 2018-07-03 15:16 (UTC)

python2-oauth2client1412 is working, but deprecated. Their git page recomends moving to "google-auth" and "oauthlib". Any plans to upgrade to these?

Purgator commented on 2017-02-28 11:30 (UTC)

@nicolassilvar, here is a workaround : install python2-oauth2client1412 from aur manually : Install gcalcli. Use makepkg -sf if needed. Mark python2-oauth2client1412 as a dependency pacman -D --asdeps python2-oauth2client1412

nicolassilvar commented on 2016-06-15 10:56 (UTC)

I get the following error when installing it: $ makepkg -sri ==> Making package: gcalcli 3.3.2-3 (Wed Jun 15 06:48:14 EDT 2016) ==> Checking runtime dependencies... ==> Installing missing dependencies... error: target not found: python2-oauth2client1412 ==> ERROR: 'pacman' failed to install missing dependencies.

vollekannehoschi commented on 2016-03-01 09:06 (UTC)

I get errors after installing that package, see I don't use this package anymore, but want to inform you.

polyzen commented on 2015-11-22 13:53 (UTC)

Try python2-oauth2client1412-2

polyzen commented on 2015-11-12 23:21 (UTC)

sleduc, thank you for figuring this out. Hacky, yes, but .. haven't heard any better ideas :p The branch that supports the current oauth2client could probably be packaged, but according to the one working on it, Brian Hartvigsen, ".. there are a lot of behavior changes in how we parse command line options that I haven't documented yet, but `gcalcli --help` will likely get you the info you need. I have been using it and tried to test all the angles, but I may have missed things. So think of it as alpha ready."

sleduc commented on 2015-11-12 18:48 (UTC)

Hello, I think there is a problem with the package python2-oauth2client1412 (a dependency of gcalcli). To build this package, it basically does: mv "$pkgdir"/usr/lib/python2.7/site-packages/oauth2client{,1412} And in gcalcli : sed -i -e '1s/$/2/' -e 's/oauth2client/oauth2client1412/' gcalcli-$pkgver The problem is that inside the oauth2client1412 library itself, there is this code : from oauth2client.old_run import run This tries to import old_run from the oauth2client library (provided by python2-oauth2client, so not the python2-oauthclient1412), and this does not exist. Basically doing this seems to work around the problem : But it is not really clean and I am not sure what would be the proper solution here. I guess one possibility would be, in the package of python2-oauth2client1412, to sed all the "oauth2client" imports into "oauth2client1412" imports, but not sure if there is a better solution...

kobusvs commented on 2015-11-12 17:05 (UTC)

I keep getting the same error as doratheextruder - I also have python2-gflags installed but to no avail. Any hope for the future so far?

polyzen commented on 2015-11-11 21:35 (UTC)

abstrakct, good to know :)

abstrakct commented on 2015-11-11 15:17 (UTC)

Works for me now. I have "python2-gflags" installed (note that it's python2, not python, important difference!)

basdi commented on 2015-11-09 16:05 (UTC)

Same here...

doratheextruder commented on 2015-11-02 15:04 (UTC)

3.3.2-3 is giving this runtime error: File "/usr/lib/python2.7/site-packages/oauth2client1412/", line 247, in run 'The gflags library must be installed to use ' NotImplementedError: The gflags library must be installed to use Please install gflags or preferrably switch to using tools.run_flow(). tried installing python-gflags using pacman and easy_install with no luck (was already installed already).....

polyzen commented on 2015-11-01 02:18 (UTC)

Droggelbecher, okurz, basdi: give 3.3.2-3 a try

basdi commented on 2015-10-30 12:31 (UTC)

Hello, No, I hadn't seen it. Sorry. But now that I've seen it, I don't know how to do the workaround. I downloaded the tar which contains an PKGBUILD which is exactly the same as the one that comes with the aur package. .. So how is the workaround to be done? THank you? Greetings!

basdi commented on 2015-10-30 12:31 (UTC)

Hello, No, I hadn't seen it. Sorry. But now that I've seen it, I don't know how to do the workaround. I downloaded the tar which contains an PKGBUILD which is exactly the same as the one that comes with the aur package. .. So how is the workaround to be done? THank you? Greetings!

polyzen commented on 2015-10-29 16:22 (UTC)

Have yall read this? > polyzen commented on 2015-10-03 01:00 > > Great news, cube777. > > According to upstream, with oauth2client 1.5.1 and this workaround, there will be issues with authentication. >

basdi commented on 2015-10-29 16:19 (UTC)

same here

okurz commented on 2015-10-14 13:23 (UTC)

can confirm observation by Droggelbecher, same error on first call of "gcalcli agenda" which should check for credentials. I did not enter any so far.

polyzen commented on 2015-10-12 01:14 (UTC)

Line 675 falls in "if credentials is None or credentials.invalid:", so.. seems to be the case.

polyzen commented on 2015-10-12 01:08 (UTC)

Droggelbecher, so "fresh install" means you had to authenticate for the first time? The comment just before your's mentioned authentication issues

polyzen commented on 2015-10-08 14:45 (UTC)

calw works here..

polyzen commented on 2015-10-08 14:44 (UTC)

Will look into this soon. Probably will just package oauth2client 1.4.12 until gcalcli upstream is ready

Droggelbecher commented on 2015-10-08 06:25 (UTC)

Crashes for me right after a fresh install: ~ master M?% gcalcli calw Traceback (most recent call last): File "/usr/bin/gcalcli", line 2580, in <module> BowChickaWowWow() File "/usr/bin/gcalcli", line 2408, in BowChickaWowWow allDay=FLAGS.allday File "/usr/bin/gcalcli", line 605, in __init__ self._GetCached() File "/usr/bin/gcalcli", line 730, in _GetCached self._CalService().calendarList().list()) File "/usr/bin/gcalcli", line 686, in _CalService http=self._GoogleAuth()) File "/usr/bin/gcalcli", line 675, in _GoogleAuth storage) File "/usr/lib/python2.7/site-packages/oauth2client/", line 142, in positional_wrapper return wrapped(*args, **kwargs) TypeError: run_flow() takes at least 3 arguments (2 given)

polyzen commented on 2015-10-03 01:00 (UTC)

Great news, cube777. According to upstream, with oauth2client 1.5.1 and this workaround, there will be issues with authentication.

kobusvs commented on 2015-10-03 00:16 (UTC)

I got it working, had to remove python2 completely, seems like install from git repo earlier today screwed up python. Thanks for fixing gcalcli. It works great now!

polyzen commented on 2015-10-02 23:21 (UTC)

polyzen commented on 2015-10-02 23:10 (UTC)

What command are you running? I don't have python2-anyjson installed -- try that and please share what you find. With this change on both the release and master, `gcalcli agenda` is working.

kobusvs commented on 2015-10-02 22:09 (UTC)

Thanks for updating but still broken, gives error "ERROR: Missing module - No module named anyjson". I believe I might have had the same error earlier today trying to use it direct from the git repo.

polyzen commented on 2015-10-02 07:05 (UTC)

Fix coming tomorrow. It's 03:05

polyzen commented on 2015-10-01 21:11 (UTC)

It doesn't work with the new version of oauth2client, apparently. You might have to uninstall this, or something, in order to -Syu, currently. Have to poke gcalcli upstream. ~ > pacman -Q gcalcli python2-oauth2client gcalcli 3.3.2-2 python2-oauth2client 1.5.1-1 ~ > gcalcli ERROR: Missing module - cannot import name run

kobusvs commented on 2015-10-01 20:50 (UTC)

Won't install with new update in official repos for python2-oauth2client

bdowning commented on 2015-05-09 08:01 (UTC)

What's happening is that emacs "dumps" a running copy of itself back out into an executable as part of its build process. It depends on its sections being mapped in place as defined in its ELF file. hardening-wrapper turns on position-independent executables by default; Linux maps them in a random place. Since emacs got built as PIE, it's unexec "dumper" doesn't work. All in all, pretty ugly all around. Ideally it would work but it doesn't. :D Anyway, thanks a lot for removing it. Hopefully it'll help others out too.

polyzen commented on 2015-05-08 20:26 (UTC)

bdowning, very sorry for this oversight; there isn't even any compiling going on. Will take care of this shortly. Don't know why it's affecting your emacs-lucid build, though.. Thank you

bdowning commented on 2015-05-08 17:30 (UTC)

Hi, Why does this depend on hardening-wrapper? It breaks builds of other packages, notably emacs. Also it should only affect things built with the C compiler, which this isn't as far as I can tell. I just spent hours trying to figure out why emacs-lucid builds have been segfaulting for the last few months, and finally tracked it down to this. Thanks.

fernando_fec commented on 2014-12-17 18:30 (UTC)

Nice people, I can't maintain this package any more, I adopted it some time ago when I had time but now I just can't give it the minimal time it rquires. Sorry for that, and good luck to the next person who adopts it.

polyzen commented on 2014-12-03 16:51 (UTC)

3.1 released yesterday

jsst commented on 2013-11-19 19:58 (UTC)

This package is based on the latest tag, which is pretty old. You might want to checkout

commented on 2013-03-28 19:59 (UTC)

disowned, because I want to get rid of google stuff on my system.

commented on 2013-03-28 16:34 (UTC)


belak commented on 2013-03-28 15:42 (UTC)

Appears to work if you just update the package version.

commented on 2013-02-16 23:41 (UTC)

I'm not using the optdepends myself, but the core functionality is definitely working now after a reinstall. Thanks Army!

commented on 2013-02-16 11:23 (UTC)

Alright, I went back to stable release, as it's supposed to be, since there's also gcalcli-git, which is currently broken, because the dependencies have changed radically. See my comment there. I haven't tested the optdepends yet, so please tell me if they don't provide functionality as intended. If you switch to gcalcli-git, you'll have to auth gcalcli again on google.

commented on 2013-02-16 10:22 (UTC)

Ok, I haven't updated gcalcli on my system for quite a while. I get ERROR: Missing module - No module named httplib2 So it looks like I have to look into it. Thanks for the hint itemzero!

commented on 2013-02-15 20:56 (UTC)

"ERROR: Missing module - No module named apiclient.discovery" Some googling seems to suggest that I should have a "" which has the mentioned module, but it is not present on my system. Is it possible that is in python-gdata but not python2-gdata? (Kind of a newbie so I apologize if I'm missing something obvious.)

commented on 2012-10-24 14:55 (UTC)

Note: You'll have to uninstall python-gdata first, because it doesn't seem to be in the conflicts of python2-gdata.

commented on 2012-10-24 14:54 (UTC)

Good point, thanks!

kritztopf commented on 2012-10-24 13:27 (UTC)

Please change dependency python-gdata to python2-gdata.

commented on 2012-05-17 18:23 (UTC)

Ok, sorry, I was on a bad mood... I'll update it in a minute

commented on 2012-05-17 17:12 (UTC)

It is quite stable. The problem is you're using python3 to run it. gcalcli must use python2 because of the google gdata library. The AUR package needs to modify the shebang to "#!/usr/bin/env python2".

commented on 2012-05-17 14:22 (UTC)

Disowned it again, this is really going on my nerves, I was hoping that the package would be quite stable... the_isz, you obviously know how to deal with such things, please take the package!

the_isz commented on 2012-05-17 09:49 (UTC)

Hi, got the following output from the newest version: File "/usr/bin/gcalcli", line 332 except Exception, e: ^ SyntaxError: invalid syntax This is fixable adding the following line to the PKGBUILD after the install command: sed -i -e '1s/$/2/' "$pkgdir/usr/bin/$pkgname" The "real" solution would be to add a file which would then install the script, automatically adapting the binary name to python2. But as long as it's only one file, the above solution is totally Ok, too. Greetings!

commented on 2012-05-11 20:51 (UTC)

Adopted again, because now I use it regularly, included in my conky :) For now I'll provide it as a git package, because on the new site there are no releases. As soon as there's a release, I'll switch to that.

commented on 2012-05-11 03:39 (UTC)

gcalcli has been moved to github.

petelewis commented on 2012-05-10 09:38 (UTC)

Hi, this also should depend on python2-vobject, so that .ics files can be imported. Thanks!

commented on 2011-11-21 16:11 (UTC)

If you want to use this with the notification daemon: 260c260,262 < 'gxmessage -display :0 -center -title "Ding, Ding, Ding!" %s' --- > 'notify-send "Google Calendar Reminder:" "%s" --icon=dialog-information' > # command = \ > # 'gxmessage -display :0 -center -title "Ding, Ding, Ding!" %s' 1047c1049 < message = "Google Calendar Reminder:\n" + message --- > #message = "Google Calendar Reminder:\n" + message

commented on 2011-10-27 18:12 (UTC)

Flagged out-of-date. However CheariX's PKGBUILD seems to work just fine. Thanks!

CheariX commented on 2011-08-14 12:59 (UTC)

Finally with UTF-8 Support (German Umlauts). I used this PKGBUILD: pkgname=gcalcli pkgver=2.1 pkgrel=1 pkgdesc="Allows you to access you Google Calendar from a command line" arch=('any') url="" license=('MIT') depends=('python-gdata' 'python-dateutil') source=(http://${pkgname}${pkgname}-${pkgver}.tgz) build() { cd ${srcdir} # HTTPs on by default sed 's|https=False,|https=True,|g' -i ${pkgname} # Change Shebang sed 's|#!/usr/bin/python2|#!/usr/bin/env python2|g' -i ${pkgname} install -D -m755 ${srcdir}/${pkgname} ${pkgdir}/usr/bin/${pkgname} } md5sums=('eb7bda97c7e30dffc05c3d8bb4dda094')

commented on 2011-08-11 05:45 (UTC)

v2.1 of gcalcli has been released. Fixes many issues and has some great enhancements.

commented on 2010-12-23 15:55 (UTC)

Updated, thanks!

commented on 2010-12-22 18:23 (UTC)

Sent an email, but including here in case someone searches on the error strings: the self.allCals.entry.sort fix addresses this: ERROR: Traceback (most recent call last): File "/usr/local/bin/gcalcli", line 1114, in <module> DoooooItHippieMonster?() File "/usr/local/bin/gcalcli", line 1025, in DoooooItHippieMonster? borderColor=borderColor) File "/usr/local/bin/gcalcli", line 312, in init self.allCals.entry.sort(lambda x, y: File "/usr/local/bin/gcalcli", line 313, in <lambda> cmp(orderx.access_level.value?, KeyError?: 'root' the utf-8 patch addresses errors I've had with chinese calendars, summarized with similar errors at:

commented on 2010-12-22 17:54 (UTC)

What's the command line which shows a broken behavior? Everything seems fine here.

commented on 2010-12-22 08:27 (UTC)

gcalcli recently started acting up for me again. Specifically sorting calendars started to fail, so I have to tweak that. Also, I had some other errors fixed by ensuring it was operating in utf-8 mode. I've found other folks with the same problem but I don't know how wide spread it is. I don't think either of these fixes would negatively impact the utility in general and so would lobby for their inclusion in the PKGBUILD: sed "s|locale.getpreferredencoding()|'utf-8'|g" -i ~/bin/gcalcli sed '/self.allCals.entry.sort/,+2 s/^/#/' -i ~/bin/gcalcli

commented on 2010-10-19 13:05 (UTC)

Thanks!!! Updated

pnutzh4x0r commented on 2010-10-19 12:22 (UTC)

We can get rid of the python-elementtree dependency, and we need to change to the shebang to point to python2 to make this work with the recent python changes.

haawda commented on 2010-09-09 15:05 (UTC)

It is a python-script, isn't it? So you can use arch=('any') .

commented on 2010-07-26 19:34 (UTC)

Updated with fix, so it works again

commented on 2010-07-26 11:06 (UTC)

Fixing this problem within the build function I'd recommend adding one line build() { cd ${srcdir} sed 's||https?://|g' -i ${pkgname} install -D -m755 ${srcdir}/${pkgname} ${pkgdir}/usr/bin/${pkgname} } Works perfectly afterwards

pnutzh4x0r commented on 2010-07-01 13:37 (UTC)

The new version of python-gdata broke gcalcli. I had to change feedPrefix under the GoogleCalendar class from to (note the use of https rather than http) to fix the problem.