My dotfiles
Use woodpecker-ci to deploy binaries to the R2 object storage. Use multi-target builds to deploy multiple binaries for one or more CPU architectures. Now the installation script lives on the root of the repo, and it is more complete checking the machine's requirements, operating system and cpu architecture. |
||
---|---|---|
.woodpecker | ||
agent | ||
backend | ||
proto | ||
proto_compiler | ||
.tool-versions | ||
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 backend && mix escript.install hex protobuf
asdf reshim
- Install hex:
Preparing for development
Backend
cd backend
- Start the database:
docker-compose up -d
mix setup
mix phx.server