darkmatter
Simple TUI application to run linux utilities with style.
[!NOTE]
- This is meant to run on Arch Linux.
Installation
I recommend you download the latest release's binary and it's sha256sum.txt from
the releases page, so you can verify your download.
Get the binary and the sha256sum using curl:
curl -L -O "https://github.com/g5ostXa/darkmatter/releases/download/v0.1.9/darkmatter-v0.1.9-linux-amd64"
curl -L -O "https://github.com/g5ostXa/darkmatter/releases/download/v0.1.9/sha256sum.txt"
Verify your download:
sha256sum -c sha256sum.txt
Here's what the output should look like:
darkmatter-v0.1.9-linux-amd64: OK
Using git:
Get the full source (latest git)
git clone --depth=1 https://github.com/g5ostXa/darkmatter.git
Usage
Initialize TUI
First, make sure the binary is executable:
chmod +x darkmatter-v0.1.9-linux-amd64
You can rename the binary to make your life simpler:
mv darkmatter-v0.1.9-linux-amd64 "new-name"
I recommend putting the binary anywhere on your $PATH, so you can run it
from anywhere just by typing the binary name.
Otherwise, cd into the directory where you store the binary and run it:
./darkmatter-v0.1.9-linux-amd64
If you downloaded the latest git, simply cd into the project's folder and run the following:
make install
ghosttp
Deploy a simple HTTP server locally:
[!TIP]
- The application will prompt you to specify the full path to serve your website locally.
- As for an example:
/home/user/path/to/website-folder
- In your browser, visit
http://localhost:8080/ to access the local server.
- To close the server and go back to the main menu, press
CTRL + C.
getarch
Quickly download latest archiso and it's signature:
- You can choose the mirror of your choice for better downloads.
- See
getarch/main.go:
const mirror = "https://mirror.quantum5.ca/archlinux/iso/latest/"
glyphs
Unicode symbols on the command line, built using huh?:
- Add more glyphs easily to
glyphs/glyphs.json.
- To leave the glyphs menu and go back to the main menu, press
CTRL + C.
[
{
"name": "Arch Linux",
"icon": ""
},
{
"name": "Secure",
"icon": " "
},
{
"name": "Digital Key",
"icon": " "
},
{
"name": "Lightning",
"icon": ""
}
]
Password generator
Generate a random 16 characters password by default using the follwing characters:
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()
You can modify the number of characters in password_generator/password_generator.go:
func Gen() {
// Define the number of characters (passwordLength)
passwordLength := 16
password, err := generatePassword(passwordLength, defaultChars)
if err != nil {
fmt.Fprintln(os.Stderr, "Failed to generate password:", err)
return
}
defer func() {
for i := range password {
password[i] = 0
}
}()
lipgloss.Println(simpleStyle.Render(string(password)))
}