Compare commits
2 commits
27508ed5ac
...
47c9dbcd89
Author | SHA1 | Date | |
---|---|---|---|
47c9dbcd89 | |||
afb97e0a89 |
5 changed files with 76 additions and 42 deletions
24
README.md
24
README.md
|
@ -19,11 +19,27 @@ Before using MFM, make sure the following tools are installed on your system:
|
||||||
- **sshfs**: <https://github.com/libfuse/sshfs>
|
- **sshfs**: <https://github.com/libfuse/sshfs>
|
||||||
- **httpdirfs**: <https://github.com/fangfufu/httpdirfs>
|
- **httpdirfs**: <https://github.com/fangfufu/httpdirfs>
|
||||||
- **fzf**: <https://github.com/junegunn/fzf>
|
- **fzf**: <https://github.com/junegunn/fzf>
|
||||||
|
- libpcre3
|
||||||
|
- libevent-2.1
|
||||||
|
|
||||||
|
For Debian/Ubuntu you can use the following command:
|
||||||
|
|
||||||
|
```shell-session
|
||||||
|
$ sudo apt-get update && sudo apt-get install libpcre3 libevent-2.1-7 fzf gocryptfs httpdirfs sshfs
|
||||||
|
```
|
||||||
|
|
||||||
|
## Building from source
|
||||||
|
|
||||||
To build from source, you'll also need:
|
To build from source, you'll also need:
|
||||||
|
|
||||||
- **crystal-lang**: <https://crystal-lang.org/>
|
- **crystal-lang**: <https://crystal-lang.org/>
|
||||||
|
|
||||||
|
For Debian/Ubuntu you can use the following command:
|
||||||
|
|
||||||
|
```shell-session
|
||||||
|
$ sudo apt-get update && sudo apt-get install libpcre3-dev libevent-2.1-dev
|
||||||
|
```
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
### 1. From Source
|
### 1. From Source
|
||||||
|
@ -36,7 +52,8 @@ To build from source, you'll also need:
|
||||||
|
|
||||||
### 2. Binary Download
|
### 2. Binary Download
|
||||||
|
|
||||||
Alternatively, download [a pre-compiled binary version](https://code.apps.glenux.net/glenux/mfm/releases) of MFM.
|
Alternatively, download [a pre-compiled binary
|
||||||
|
version](https://code.apps.glenux.net/glenux/mfm/releases) of MFM.
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
|
@ -61,7 +78,8 @@ Commands (not implemented yet):
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
MFM uses a YAML configuration file, typically found at `~/.config/mfm.yml`, to detail the filesystem names, types, and respective configurations.
|
MFM uses a YAML configuration file, typically found at `~/.config/mfm.yml`, to
|
||||||
|
detail the filesystem names, types, and respective configurations.
|
||||||
|
|
||||||
### YAML File Format
|
### YAML File Format
|
||||||
|
|
||||||
|
@ -86,7 +104,7 @@ filesystems:
|
||||||
- type: httpdirfs
|
- type: httpdirfs
|
||||||
name: "Debian Repository"
|
name: "Debian Repository"
|
||||||
url: "http://ftp.debian.org/debian/"
|
url: "http://ftp.debian.org/debian/"
|
||||||
|
|
||||||
# Add more filesystems as needed
|
# Add more filesystems as needed
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
2
Vagrantfile
vendored
2
Vagrantfile
vendored
|
@ -30,5 +30,5 @@ Vagrant.configure('2') do |config|
|
||||||
machine.vm.network 'forwarded_port', guest: 80, host: 1080, host_ip: '127.0.0.1'
|
machine.vm.network 'forwarded_port', guest: 80, host: 1080, host_ip: '127.0.0.1'
|
||||||
end
|
end
|
||||||
|
|
||||||
config.vm.provision 'shell', path: 'scripts/vagrant.provision.sh'
|
config.vm.provision 'shell', path: 'scripts/vagrant-provision/base.sh'
|
||||||
end
|
end
|
||||||
|
|
32
scripts/vagrant-provision/base.sh
Normal file
32
scripts/vagrant-provision/base.sh
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
set -u
|
||||||
|
|
||||||
|
USER="$(test -d /vagrant && echo "vagrant" || echo "debian")"
|
||||||
|
HOSTNAME="$(hostname)"
|
||||||
|
|
||||||
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
echo "Installing required system packages"
|
||||||
|
apt-get update --allow-releaseinfo-change
|
||||||
|
apt-get install -y \
|
||||||
|
apt-transport-https \
|
||||||
|
ca-certificates \
|
||||||
|
git \
|
||||||
|
curl \
|
||||||
|
wget \
|
||||||
|
vim \
|
||||||
|
gnupg2 \
|
||||||
|
software-properties-common
|
||||||
|
|
||||||
|
# echo "Installing mfm requirements"
|
||||||
|
# apt-get install -y \
|
||||||
|
# fzf \
|
||||||
|
# sshfs \
|
||||||
|
# httpdirfs \
|
||||||
|
# libyaml-0-2 \
|
||||||
|
# libyaml-dev \
|
||||||
|
# libpcre3-dev \
|
||||||
|
# libevent-dev
|
||||||
|
|
|
@ -9,26 +9,6 @@ HOSTNAME="$(hostname)"
|
||||||
|
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
echo "Installing required system packages"
|
|
||||||
apt-get update --allow-releaseinfo-change
|
|
||||||
apt-get install -y \
|
|
||||||
apt-transport-https \
|
|
||||||
ca-certificates \
|
|
||||||
git \
|
|
||||||
curl \
|
|
||||||
wget \
|
|
||||||
vim \
|
|
||||||
gnupg2 \
|
|
||||||
software-properties-common
|
|
||||||
|
|
||||||
echo "Installing recording requirements"
|
|
||||||
apt-get install -y \
|
|
||||||
tmux \
|
|
||||||
mdp \
|
|
||||||
bat \
|
|
||||||
asciinema \
|
|
||||||
termtosvg
|
|
||||||
|
|
||||||
echo "Installing mfm requirements"
|
echo "Installing mfm requirements"
|
||||||
apt-get install -y \
|
apt-get install -y \
|
||||||
fzf \
|
fzf \
|
||||||
|
@ -39,24 +19,6 @@ apt-get install -y \
|
||||||
libpcre3-dev \
|
libpcre3-dev \
|
||||||
libevent-dev
|
libevent-dev
|
||||||
|
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
set -u
|
|
||||||
|
|
||||||
USER="$(test -d /vagrant && echo "vagrant" || echo "debian")"
|
|
||||||
CLUSTERS_DIR=/home/$USER/clusters
|
|
||||||
|
|
||||||
# Installation de kompose
|
|
||||||
if [ ! -f /usr/local/bin/kompose ]; then
|
|
||||||
DL="$(mktemp)"
|
|
||||||
curl \
|
|
||||||
-L https://github.com/kubernetes/kompose/releases/download/v1.22.0/kompose-linux-amd64 \
|
|
||||||
-o "$DL"
|
|
||||||
chmod +x "$DL"
|
|
||||||
mv "$DL" /usr/local/bin/kompose
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Installing asdf
|
# Installing asdf
|
||||||
su - "$USER" -c "git config --global advice.detachedHead false"
|
su - "$USER" -c "git config --global advice.detachedHead false"
|
||||||
su - "$USER" -c "rm -rf ~/.asdf"
|
su - "$USER" -c "rm -rf ~/.asdf"
|
22
scripts/vagrant-provision/recording.sh
Normal file
22
scripts/vagrant-provision/recording.sh
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# install crystal
|
||||||
|
set -e
|
||||||
|
set -u
|
||||||
|
|
||||||
|
USER="$(test -d /vagrant && echo "vagrant" || echo "debian")"
|
||||||
|
HOSTNAME="$(hostname)"
|
||||||
|
|
||||||
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
echo "Installing required system packages"
|
||||||
|
apt-get update --allow-releaseinfo-change
|
||||||
|
|
||||||
|
echo "Installing recording requirements"
|
||||||
|
apt-get install -y \
|
||||||
|
tmux \
|
||||||
|
mdp \
|
||||||
|
bat \
|
||||||
|
asciinema \
|
||||||
|
termtosvg
|
||||||
|
|
Loading…
Reference in a new issue