R Sidhu <sidh...@gmail.com> writes: > I am interested in using guile-ssh for file transfer. Ran into the > following issues: > > 1. 'git clone > https://github.com/artyom-poptsov/guile-ssh/releases/tag/v0.6.0' fails > with: > fatal: > https://github.com/artyom-poptsov/guile-ssh/releases/tag/v0.6.0/info/refs > not valid: is this a git repository?
Tags on GitHub can be downloaded as a .tar.gz or ZIP, but not cloned if I'm not mistaken. > 2. INSTALL file suggests './configure' but its missing Short story: you need to run either ./autogen.sh, or if that doesn't exist, run "autoreconf -fi" in the source directory. Long story: The ./configure script of a software package is what needs to be run on the install-site to configure the package for the machine on which it will be compiled and installed, but this ./configure script is rarely written by hand, because it must be in the Bourne shell language to be highly portable across Unix machines, which is a horrible language. Most commonly, there is a configure.ac file which is written in the more special-purpose and high-level autoconf language, and the software's author runs the autoconf command to turn this into a ./configure script before packaging and shipping the software. Therefore, when you fetch the bare source code of a project, you usually have a configure.ac file but not the ./configure script which it would generate. Often for convenience there is a tiny ./autogen.sh script which runs autoconf and maybe some other things for you (specifically automake), but nowadays usually running "autoreconf -fi" is the only thing that needs to be done. > 3. Installation instructions in doc/ directory (texinfo files) suggest > 'autoreconf -if' which fails with: > configure.ac:55: error: possibly undefined macro: AC_DEFINE > If this token and others are legitimate, please use m4_pattern_allow. > See the Autoconf documentation. > autoreconf: /usr/bin/autoconf failed with exit status: 1 I had this problem more than once already but keep forgetting what the solution was. Do you have pkg-config installed? Do you have pkg-config files in non-standard places, like $HOME/usr/lib/pkgconfig, or $HOME/.guix-profile/lib/pkgconfig? If so you'll need to set PKG_CONFIG_PATH to a colon-separated list of such directories. (Best to 'export' that in ~/.profile or ~/.bash_login or so.) Do you have a recent version of GNU m4 installed? > 4. While initial steps seem clear (establishing session, > authenticating and creating channel), not clear how to perform file > transfer. I've never used guile-ssh so this is a shot in the dark: maybe a simple read-char / write-char loop to read and write the bytes in a file one by one? > Appreciate work done on guile-ssh so far. Look forward to help re > above. > > Regards > sidhu1f Hope someone can clear questions 3 and 4. Taylan