Add run script and readme
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
Simon Bruder 2020-06-10 16:33:29 +02:00
parent da2b952ec7
commit 6f641bbd97
No known key found for this signature in database
GPG key ID: 6F03E0000CC5B62F
2 changed files with 52 additions and 0 deletions

19
README.md Normal file
View file

@ -0,0 +1,19 @@
# *osu!lazer* in docker
## How to use
Place `run.sh` in a directory of your choice. On first run, the directories
`data` and `import` will be created.
To import a beatmap, place it in the `import` directory, open a graphical file
manager and drag-and-drop the file into *osu!*.
## Known Bugs
* *osu!* shows `Couldnt list input devices. Is libasound2-dev installed?` at
startup. Fixing this requires installing `libasound2-dev` in the runtime
container and mounting `/dev/snd` in the container. This is not done as this
container is intended to be used with PulseAudio (which works).
<small>This is not an official product by ppy Pty Ltd. *osu!* is a registered
trademark by ppy Pty Ltd.</small>

33
run.sh Executable file
View file

@ -0,0 +1,33 @@
#!/bin/bash
function set_latency_offset() {
if [ $# != 1 ]; then
return 1
fi
echo "Set latency offset to $1 µs" >&2
pactl set-port-latency-offset alsa_card.pci-0000_00_1b.0 analog-output-headphones $1
}
set_latency_offset -40000
trap "set_latency_offset 0" SIGINT SIGTERM EXIT
BASEDIR="$(dirname $(realpath -s $0))"
mkdir -p "$BASEDIR/data" "$BASEDIR/import"
docker run \
--rm \
-it \
--name osu \
-e DISPLAY \
-e PULSE_SERVER=/run/user/$(id -u)/pulse/native \
-e PULSE_COOKIE=/run/pulse/cookie \
--device /dev/dri \
--group-add $(getent group video|cut -d: -f3) \
--group-add $(getent group audio|cut -d: -f3) \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-v /run/user/$(id -u)/pulse/native:/run/user/$(id -u)/pulse/native \
-v "$HOME/.config/pulse/cookie:/run/pulse/cookie" \
-v "$BASEDIR/data/:/home/osu/osu/" \
-v "$BASEDIR/import/:$BASEDIR/import/" \
r.sbruder.de/osu \
$@