My dotfiles
Some work has been done on making the Connection feel nicer, but also more work is needed to not have the channel be exposed to the upper layers of the application. We should wrap all the GRPC calls in the GenServer (which may also allow caching on certain calls such as get_sys_info) |
||
---|---|---|
.woodpecker | ||
agent | ||
app | ||
proto | ||
proto_compiler | ||
.gitignore | ||
.tool-versions | ||
Cargo.lock | ||
Cargo.toml | ||
docker-compose.yml | ||
get_prymn.sh | ||
README.md |
Prymn
Project dependencies
- Elixir 1.15
- Erlang 24 or later
- Rust (recent version)
- protoc for protobufs version 3
Setup
Some basic steps to setup the project and its dependencies.
- Install asdf (curl is also required)
- Using git:
git clone https://github.com/asdf-vm/asdf.git ~/.asdf
- or, using paru,
paru -S asdf-vm
- Add asdf to path:
source /opt/asdf-vm/asdf.{bash,zsh,fish}
, or~/.asdf/asdf.{bash,zsh,fish}
- Using git:
- Install erlang
asdf plugin add erlang
asdf install erlang 25
- Install elixir
asdf plugin add elixir
asdf install elixir 1.15
- Install rust
- Optionally, set
CARGO_HOME
andRUSTUP_HOME
to a XDG directory (e.g~/.local/share/cargo
and~/.local/share/rustup
) - Arch:
pacman -S rustup
- Other:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- Make sure to add
$HOME/.cargo/bin
(or$CARGO_HOME
) toPATH
rustup toolchain install stable
rustup default stable
rustup component add clippy
rustup component add rust-analyzer
rustup component add rustfmt
- Optionally, set
- Install protoc version 3
- Arch:
pacman -S protobuf
- Debian:
apt install -y protobuf-compiler
- Arch:
- (Optional) Install inotify-tools
- Arch:
pacman -S inotify-tools
- Debian:
apt install -y inotify-tools
- Arch:
- Setup elixir
- Install hex:
mix local.hex
cd app && mix escript.install hex protobuf
asdf reshim
- Install hex:
Preparing for development
Elixir app
cd app
- Start the database:
docker-compose up -d
mix setup
mix phx.server