systems-guide/applications.md

57 lines
1.4 KiB
Markdown

# Installing applications and their dependencies
## Create your SSH keys for Github
Generate ssh-key for private Git porjects
then copy it to Github project under Settings -> Deploy keys
```sh
ssh-keygen -t ed25519
cat /home/admin/.ssh/id_ed25519.pub # (or whatever u named it, if u only need it for 1 project, keep it default)
```
## Put your apps in `/usr/local/bin/`
Do not just install stuff in `/home/` dirs.
Rather `git clone` the repos to your home and then move it to `/usr/local/bin/` partition.
If SELinux is turned on you might also wanna do `restorecon` to let `systemctl` service be able to use it.
```sh
sudo mv your_repo /usr/local/bin/your_repo
restorecon -Rv /usr/local/bin/your_repo
```
This will reset
This way other users of the system can also access and use your app without letting them into your $HOME.
## Installing NodeJS
Install NVM
```sh
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
```
Restart the shell session (or exit / reconnect to ssh) to use `nvm`.
Install and set the latest LTS (long term support) NodeJS.
```sh
nvm install --lts
```
## Installing Rust
```sh
# Install required packages
# openssl-devel is optional, but you will need it for web stuff such as Axum server
sudo dnf install curl epel-release cmake gcc make openssl-devel -y
# Install Rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
```
Restart the shell session (or exit / reconnect to ssh) to use Rust.