First time invocation: seed instructions on command line unsuccessful
After installing lsh 2.1-8 on an Ubuntu 16.04 (xenial) system the first interactions with lsh results in a "Could not create lock file" error message when following instructions as output on the command line for creating the seed file;
$ lsh
No seed file. Please create one by running
lsh-make-seed -o "/home/miki/.lsh/yarrow-seed-file".
Usage: lsh [OPTION...] host
or: lsh [OPTION...] host command ...
Try `lsh --help' or `lsh --usage' for more information.
$ lsh-make-seed -o "/home/miki/.lsh/yarrow-seed-file"
lsh-make-seed: Reading system state...
lsh-make-seed: Got 141 bits of entropy from system state.
lsh-make-seed: Please type some random data. You better do this
lsh-make-seed: when connected directly to a console, typing over
lsh-make-seed: the network provides worse timing information, and
lsh-make-seed: more opportunities for eavesdropping.
----------------------------------------
........................................
lsh-make-seed: Got 165 keystrokes, estimating 200 bits of entropy.
lsh-make-seed: You can stop typing now.
lsh-make-seed: Could not create lock file `/home/miki/.lsh/yarrow-seed-file.lock' (errno = 2): No such file or directory
lsh-make-seed: Failed to lock file `/home/miki/.lsh/yarrow-seed-file'
$ ll .lsh
ls: cannot access '.lsh': No such file or directory
This seems to be caused by the ~/.lsh configuration directory not being created yet, and not done automatically when using the -o argument. In contrast, when lsh-make-seed is run without arguments as the manual instructs the directory is indeed created and the seed file written;
$ lsh-make-seed
lsh-make-seed: Reading system state...
lsh-make-seed: Got 141 bits of entropy from system state.
lsh-make-seed: Please type some random data. You better do this
lsh-make-seed: when connected directly to a console, typing over
lsh-make-seed: the network provides worse timing information, and
lsh-make-seed: more opportunities for eavesdropping.
----------------------------------------
........................................
lsh-make-seed: Got 216 keystrokes, estimating 201 bits of entropy.
lsh-make-seed: You can stop typing now.
$ ll .lsh
total 48
drwxr-xr-x 2 miki miki 4096 Dec 6 19:04 ./
drwxr-xr-x 441 miki miki 36864 Dec 6 19:04 ../
-rw------- 1 miki miki 32 Dec 6 19:04 yarrow-seed-file
It would improve the experience for new users, at least for people like me and also some other people, if these first steps were less cumbersome.
Here are some humble suggestions:
- modify cmd line instructions to include lsh-make-seed with default output filename
- automatically start the seed file generation if needed (something like that is done in lsh-keygen in master branch, but not in 2.1)
- modify lsh-make-seed to create the config dir regardless of whether an output filename has been specified on command line (current behaviour seems to be a deliberate feature though)