Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[submodule "submodules/opengl"]
path = submodules/opengl
url = git@github.com:nim-lang/opengl.git
[submodule "submodules/x11"]
path = submodules/x11
url = git@github.com:nim-lang/x11.git
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ before_install:
- docker pull nimlang/nim
script:
- docker run nimlang/nim nim --version
- docker run -v "$(pwd):/project" -w /project nimlang/nim sh -c "nimble install -dy && nimble build"
- docker run -v "$(pwd):/project" -w /project/src nimlang/nim sh -c "nim c boomer.nim"
17 changes: 12 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ Zoomer application for Linux.

## Dependencies

tested on nim version 1.1.1

### Debian

```console
Expand All @@ -20,21 +22,26 @@ $ sudo apt-get install libgl1-mesa-dev libx11-dev libxext-dev libxrandr-dev

## Quick Start

Don't forget to also clone the submodules. This shit should be done by
default, but some APIs insist to cause friction to developers.

```console
$ nimble build
$ ./boomer --help
$ ./boomer # to just start using
$ git clone --recurse-submodules git@github.com:tsoding/boomer.git
$ cd boomer
$ nim c src/boomer.nim
$ src/boomer --help
$ src/boomer # to just start using
```

## Developer Capabilities

For additional Developer Capabilities compile the application with the following flags:

```console
$ nimble build -d:developer
$ nim c -d:developer src/boomer.nim
```

This will enable reloading the shaders with `Ctrl+R`. The shader files (`frag.glsl` and `vert.glsl`) should be located in the same folder as `boomer.nim` for this feature to work. If the shader files not found the program won't even start.
This will enable reloading the shaders with `Ctrl+R`. For this feature to work, the shader files (`frag.glsl` and `vert.glsl`) should be located in the same folder as `boomer.nim` and you must compile from the project root, not from the src folder. If the shader files are not found the program won't even start.

**Keep in mind that the developer build is not suitable for day-to-day usage because it creates the external dependency on the shader files. Compiling the program without `-d:developer` "bakes" the shaders into the executable and eliminates the dependency.**

Expand Down
8 changes: 0 additions & 8 deletions boomer.nimble

This file was deleted.

4 changes: 4 additions & 0 deletions nim.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
--noNimblePath
--path="submodules/x11"
--path="submodules/opengl/src"
-d:danger
1 change: 1 addition & 0 deletions submodules/opengl
Submodule opengl added at 8e2e09
1 change: 1 addition & 0 deletions submodules/x11
Submodule x11 added at 29aca5