[wiki/MUTN] Add basic building/installation instructions

This commit is contained in:
2024-07-07 22:59:55 -04:00
parent cb6cde9e8e
commit ff6f5da824
9 changed files with 28 additions and 20 deletions
+2 -16
View File
@@ -1,11 +1,7 @@
# MUTN Password Manager
Pronounced as: "mutton", "muh·tn"
MUTN is a simple, self-hosted, SSH-synchronized password manager based on libmutton.
MUTN is an expanded re-implementation of [sshyp](https://github.com/rwinkhart/sshyp) written in Go.
Though MUTN will feel very familiar to users of sshyp, it is intended to differ and breaks compatibility with its entry format.
MUTN is a simple, self-hosted, SSH-synchronized password manager based on libmutton. It is the successor to [sshyp](https://github.com/rwinkhart/sshyp).
> [!WARNING]
>It is your responsibility to assess the security and stability of MUTN and to ensure it meets your needs before using it.
@@ -16,17 +12,7 @@ Though MUTN will feel very familiar to users of sshyp, it is intended to differ
MUTN aims to make it as simple as possible to manage passwords and notes via CLI across multiple devices in a secure, self-hosted fashion.
# Building
This repository is currently home to both the MUTN client and the general libmutton server software.
Official binaries are stripped of debug info for size and built without CGO (except for distribution packages) for portability, as follows:
```
CGO_ENABLED=0 go build -ldflags="-s -w" ./mutn.go
CGO_ENABLED=0 go build -ldflags="-s -w" ./libmuttonserver.go
```
Additionally, some custom build tags can be used to create different binaries. The following tags are not used in official builds:
- `wsl`: Allows creating a Linux binary that can interact with the Windows clipboard (for WSL)
- `termux`: Allows creating a Linux binary that can interact with the Termux clipboard (for Android)
See the [building guide](https://github.com/rwinkhart/MUTN/blob/main/wiki/MUTN/build.md).
# Roadmap
#### Release v0.2.0 - Make repo public - No binaries
+1 -1
View File
@@ -1,6 +1,6 @@
#!/bin/sh
gofmt -l -w -s ./src/cli/*.go
gofmt -l -w -s ./src/backend/*.go
git add -f extra src wiki .gitignore commit.sh go.mod go.sum LICENSE mutn.go libmuttonserver.go README.md
git add -f extra completions src wiki .gitignore commit.sh go.mod go.sum LICENSE mutn.go libmuttonserver.go README.md
git commit -m "$1"
git push
+12
View File
@@ -0,0 +1,12 @@
## Building
This repository is currently home to both the MUTN client and the general libmutton server software.
Official binaries are stripped of debug info for size and built without CGO (except for distribution packages) for portability, as follows:
```
CGO_ENABLED=0 go build -ldflags="-s -w" -trimpath ./mutn.go
CGO_ENABLED=0 go build -ldflags="-s -w" -trimpath ./libmuttonserver.go
```
Additionally, some custom build tags can be used to create different binaries. The following tags are not used in official builds:
- `wsl`: Allows creating a Linux binary that can interact with the Windows clipboard (for WSL)
- `termux`: Allows creating a Linux binary that can interact with the Termux clipboard (for Android)
+2 -2
View File
@@ -1,6 +1,6 @@
## Shell Completions Troubleshooting
### ZSH completions not working?
Make sure your ~/.zshrc contains the following:
Make sure your ~/.zshrc contains the following (if sourcing from default completions location, usually `/usr/share/zsh/functions/Completion/Unix/_mutn`):
```shell
autoload -Uz compinit && compinit
```
@@ -9,7 +9,7 @@ autoload -Uz compinit && compinit
### Bash completions not working?
Install your distribution's 'bash-completion' package or source the completion script manually.
For most environments, this would mean adding the following to your ~/.bashrc:
For most environments, manual sourcing means adding the following to your ~/.bashrc:
```shell
source /usr/share/bash-completion/completions/mutn
```
+8
View File
@@ -0,0 +1,8 @@
## Installation
MUTN is still in early development and thus no installation packages are officially distributed.
For now, please [compile from source](https://github.com/rwinkhart/MUTN/blob/main/wiki/MUTN/build.md).
After compiling and placing the binaries in your $PATH, it is highly recommended to also download and correctly place/source the relevant shell completions scripts. [Shell completions are provided for ZSH, Bash, and PowerShell 7+](https://github.com/rwinkhart/MUTN/tree/main/completions).
For help with completions scrips, see [completions troubleshooting](https://github.com/rwinkhart/MUTN/blob/main/wiki/MUTN/completions.md).
+3 -1
View File
@@ -3,7 +3,9 @@
Crossed out items have not yet been added to the wiki.
### MUTN-specific Information
[~~Installation~~](https://github.com/rwinkhart/MUTN/blob/main/wiki/MUTN/main.md)
[Installation](https://github.com/rwinkhart/MUTN/blob/main/wiki/MUTN/install.md)
[Building](https://github.com/rwinkhart/MUTN/blob/main/wiki/MUTN/build.md)
[~~Usage~~](https://github.com/rwinkhart/MUTN/blob/main/wiki/MUTN/usage.md)