I installed python27Packages.googlecl, and when running `google` it says: File "/nix/store/1ksk91s0kd1sv2clrkwcvzcmr67smgps-python2.7-googlecl-0.9.14/bin/.google-wrapped", line 45 from __future__ import with_statement SyntaxError: from __future__ imports must occur at the beginning of the file
Indeed, that file has 44 lines of other stuff first that looks like they were added by a wrapper script: #!/nix/store/pbi1lgank10fy0xpjckbdpgacqw34dsz-python-2.7.9/bin/python2.7 # # Copyright (C) 2010 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import sys; sys.argv[0] = 'google' """Main function for the Google command line tool, GoogleCL. This program provides some functionality for a number of Google services from the command line. Example usage (omitting the initial "./google"): # Create a photo album with tags "Vermont" and name "Summer Vacation 2009" picasa create -n "Summer Vacation 2009" -t Vermont ~/photos/vacation2009/* # Post photos to an existing album picasa post -n "Summer Vacation 2008" ~/old_photos/*.jpg # Download another user's albums whose titles match a regular expression picasa get --user my.friend.joe --name ".*computer.*" ~/photos/joes_computer # Delete some posts you accidentally put up blogger delete -n "Silly post, number [0-9]*" # Post your latest film endeavor to YouTube youtube post --category Film --tag "Jane Austen, zombies" ~/final_project.mp4 Some terminology in use: service: The Google service being accessed (e.g. Picasa, Blogger, YouTube). task: What the client wants done by the service (e.g. post, get, delete). """ from __future__ import with_statement __author__ = 'tom.h.mil...@gmail.com (Tom Miller)' import glob import logging import optparse I guess we need to move this line below any __future__ statements: import sys; sys.argv[0] = 'google' According to https://docs.python.org/2/reference/simple_stmts.html#future the rest should be OK: A future statement must appear near the top of the module. The only lines that can appear before a future statement are: the module docstring (if any), comments, blank lines, and other future statements. Jeff _______________________________________________ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev