-
-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from dyne/master
merge from upstream
- Loading branch information
Showing
260 changed files
with
52,306 additions
and
519 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -69,55 +69,43 @@ Installation and activation takes a few steps and needs root: | |
2. Install all requirements, here below the list of packages: | ||
|
||
``` | ||
zsh iptables ebtables gettext-base procps net-tools autoconf | ||
libssl-dev libbind-dev libpcap-dev unzip wget gcc make liblo-dev | ||
libnetfilter-conntrack3 libnetfilter-queue-dev libjemalloc-dev | ||
libseccomp2 libsodium-dev libhiredis-dev libkmod-dev | ||
zsh iptables ebtables sqlite3 procps gettext-base procps net-tools | ||
autoconf libssl-dev libbind-dev libpcap-dev unzip wget gcc make | ||
liblo-dev libnetfilter-conntrack3 libnetfilter-queue-dev | ||
libjemalloc-dev libseccomp2 libsodium-dev libhiredis-dev libkmod-dev | ||
``` | ||
|
||
3. Run `make` | ||
3. Choose which user should be running dowse: your own is fine, or | ||
eventually create one just for that to separate filesystem | ||
permissions. | ||
|
||
4. Configure the files in the `conf/` folder: settings and network | ||
The files are plain text and include documentation in comments. | ||
4. As the user of choice, run `make` | ||
|
||
5. Fire up the startup script **as root**: `sudo ./start.sh` | ||
5. As root, run `make install` | ||
|
||
5.1 Please note that if you are root and inside a ZSh shell, then an | ||
interactive console is available: do `source dowse conf/settings` | ||
(or another custom config file) and then proceed launching commands | ||
prefixed with `dowse-` (tab completion available) | ||
|
||
6. Remember to deactivate the DHCP service (Automatic IP | ||
configuration) on any other object on the network, typically your | ||
ADSL router. | ||
7. As the dowse user of choice and inside the source, fire up the | ||
startup script `./start.sh` | ||
|
||
If all went well now one should be able to connect any device to the | ||
internet as you did before, via Dowse. | ||
|
||
## Embedded ARM devices | ||
Dowse is now running, but there is no graphical interface at the | ||
moment. To interact and check the status there is only a console with | ||
commands prefixed with `dowse-` (tab completion available). | ||
|
||
If you are using an ARM device, for instance a RaspberryPi box, then | ||
you are probably running Raspian or a derivative, which lacks many of | ||
the packages needed to compile and run Dowse. | ||
To enter it run zsh without extensions and source the main script: | ||
first type `zsh -f` and press enter, then type `source | ||
/usr/local/dowse/zshrc` and press enter. | ||
|
||
In order to get these packages, one can add the Devuan.org repository | ||
to `/etc/apt/sources.list.d/devuan.list` with one line: | ||
If you like the dowse user to have an interactive console every time | ||
it logs in, then do `ln -s /usr/local/dowse/zshrc $HOME`. | ||
|
||
``` | ||
deb http://packages.devuan.org/merged/ jessie main | ||
``` | ||
If necessary edit the files in the `/etc/dowse` folder, maybe with the address for the local network you like to create or the wifi you like to connect to. | ||
|
||
Then import the Devuan developers keys and update the repositories: | ||
|
||
``` | ||
apt-get install devuan-keyring | ||
apt-get update | ||
``` | ||
If all went well now one should be able to connect any device to the | ||
internet as you did before, via Dowse. | ||
|
||
And then proceed with installing all the dependencies indicated above. | ||
## Embedded ARM devices | ||
|
||
When compilation is completed then it is possible to run `make` and | ||
build Dowse also on ARM devices, thanks to http://Devuan.org | ||
Using https://beta.devuan.org just compile and install Dowse following the procedure above. Images are available for a several popular ARM devices including RaspberryPI2 and 3, BananaPI, Cubieboard etc. | ||
|
||
# Visualization | ||
|
||
|
@@ -126,16 +114,21 @@ easily processed by `gource`. This is the best way to "see dowse | |
running": if you are running it locally, then install `gource` and do: | ||
|
||
``` | ||
./src/dowse-to-gource | gource --log-format custom - | ||
dowse-to-gource | gource --log-format custom - | ||
``` | ||
|
||
or from remote: | ||
|
||
``` | ||
ssh [email protected] -- dowse-to-gource | gource --log-format custom - | ||
``` | ||
|
||
This will live render all the DNS activity occurring on your | ||
computer. Our utility subscribes to DNS events (reading from Redis, | ||
which listens only on localhost by default) and draws the sort of | ||
animation that is also showcased on our website. | ||
This will live render all the DNS activity occurring on your computer | ||
or local network, with the sort of animation that is also showcased on | ||
our website. | ||
|
||
One can also experiment with gource arguments and render all into a | ||
video file. | ||
One can also experiment with gource arguments and render all the | ||
output of dowse-to-gource into a video file. | ||
|
||
# Experimentation | ||
|
||
|
@@ -144,7 +137,7 @@ low-latency devices that are running on the same network. To start it | |
one must know the IP address of the device, then do: | ||
|
||
``` | ||
./src/dowse-to-osc osc.udp://10.0.0.2:999 | ||
dowse-to-osc osc.udp://10.0.0.2:999 | ||
``` | ||
|
||
This will start sending OSC messages over UDP to IP 10.0.0.2 port 999 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
#!/usr/bin/zsh | ||
|
||
netdata-conf() { | ||
cat <<EOF | ||
[global] | ||
# special port for dowse | ||
port = 29999 | ||
ip version = ipv4 | ||
bind socket to ip = $address | ||
run as user = $dowse_uid | ||
web files owner = root | ||
web files group = staff | ||
error log = $H/run/netdata-error.log | ||
access log = $H/run/netdata-access.log | ||
debug log = $H/run/netdata-debug.log | ||
memory deduplication = yes | ||
# save - dump on exit | ||
# map - write to disk realtime | ||
memory mode = ram | ||
EOF | ||
} | ||
|
||
netdata-exec() { | ||
fn netdata-start $* | ||
req=(conf) | ||
freq=($conf) | ||
ckreq || return $? | ||
|
||
ztmp | ||
launch netdata -pidfile $ztmpfile -c $conf -p 29999 | ||
savepid netdata $ztmpfile | ||
|
||
return $? | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.