Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Script failing to start on macOS #18

Closed
nicholsn opened this issue Sep 9, 2023 · 4 comments
Closed

Script failing to start on macOS #18

nicholsn opened this issue Sep 9, 2023 · 4 comments

Comments

@nicholsn
Copy link

nicholsn commented Sep 9, 2023

I'm trying to start qlever and hitting a snag with this startup script. This looks like a really interesting project so help is much appreciated!

# drop into bash from the default zsh
bash
...
bash-3.2$ . ./qlever

QLEVER CONFIG

Checking your PATH ...
Added the directory "/Users/nnichols/Code/qlever-control" to your PATH

Setting up bash autocompletion ...
usage: paste [-s] [-d delimiters] file ...
Done, number of completions:       35

Checking Qleverfile ...
There is already a QLeverfile in this directory. If you want a freshly generated
default Qleverfile, remove or move the existing one and run ". qlever" again.

Setup is complete
Type qlever and use autocompletion to see which actions are available. Add a
"show" in the end to see what an action does without executing it (for example,
qlever index show). Edit your local Qleverfile to change settings. A typical
sequence of actions if you have used a preconfigured Qleverfile is:

qlever get-data
qlever index
qlever start
qlever example-query

Note that tab completion is not working, but now try an example command:

bash-3.2$ qlever index show

QLEVER HELP

The qlever script controls everything concerning QLever. Calling it without
arguments always displays this information. Before using the script the first
time in a particular shell and directory, type . /path/to/qlever. This will
enable autocompletion, update your PATH, and create a default Qleverfile.

Qleverfile
The Qleverfile configures everything: how to get the data, build an index,
start the server, and all kinds of settings. Modify the default Qleverfile as
you see fit. For some datasets, there are preconfigured QLeverfiles: to get one
of those, type qlever show-configs and follow the instructions.

Actions
On the command line, typing TAB after qlever gives you the available actions.
You can also execute several actions with one command, for example "qlever index
start log`. If you just want to see what an action does, but not exeute it,
append "show", for example qlever index start show.

Binaries
By default, the qlever script uses the official QLever docker image (settings
USE_DOCKER and QLEVER_DOCKER_IMAGE in the Qleverfile). If you want to use the
QLever binaries, you have to compile them on your machine. For instructions,
type qlever install-binaries.

Any ideas what's going on here? When I try other commands I similarly just get the help message.

@hannahbast
Copy link
Member

hannahbast commented Sep 9, 2023

@nicholsn Unfortunately, the script does not work for macOS because of some quirks of the macOS bash. For this and other reasons, we are migrating to a Python-based version of the script. You can try out the current version by checking out #17 . It doesn't have the full funtionality from the original script yet, but it does support the key actions get-data, index, start, stop, and status already.

It's easiest to use Docker (just pull the latest image with docker pull adfreiburg/qlever). But you can also compile the binaries natively on your machine following how it's done in https://github.com/ad-freiburg/qlever-control/blob/python-qlever/.github/workflows/end-to-end-test-macos.yml .

@nicholsn
Copy link
Author

Thanks, @hannahbast! I'm on mac silicon and the docker image didn't match. Any chance you've tried building this on arm64? Else, I'll try running this on aws

@joka921
Copy link
Member

joka921 commented Dec 13, 2023

Hi @nicholsn

In the meantime we have rewritten the control script in python, just install it via pip install qlever.
For the docker containers, since yesterday the adfreiburg/qlever repository should also contain ARM64 containers for the M1/M2/M3 flavors of MacBooks. Have fun trying them out, and feel free to tell us about your experiences.

@nicholsn
Copy link
Author

Awesome this worked, thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants