Here are projects that I actively work on. All of them are POSIX shell scripting related.
They are:
- beadm(8) – manage ZFS Boot Environments on FreeBSD
- automount(8) – mount removable media on FreeBSD
- lsblk(8) – list block devices on FreeBSD
Below is detailed information about these projects.
beadm(8)
___ ___ __ ____ __ / / / / / // \\ \ / / ____ ____ ___/ /___ ___ / // / / \ \ / \ / _ \ / \ / // \ \/ / \ \ / / / / // ___// / // / // / / /\ \ / / // / \____/ \____/ \_____\\____//__/__/__/ \_\\____//_/
I started the beadm(8) in 2012 and its developed/supported today. In the meantime the FreeBSD project created its own tool called bectl(8) that aims to implement beadm(8) in the C language.
The beadm(8) source is available on GitHub here:
https://github.com/vermaden/beadm
My presentations about ZFS Boot Environments and beadm(8) are available here:
- ZFS Boot Environments at PBUG [2018/07]
- ZFS Boot Environments Reloaded at NLUUG Conference 2018 [2018/11]
The beadm(8) in action.
automount(8)
___ /\ ___ __/ /_ / \ _\ \__ ____ _____/_ __/__ / _/\ ___ ___ ____ ______ __\__ _\ / \ / / // // \ /\_/ \ / / \ / \\ \ \ / \\ \ / / // / // // / // \\ \ \ \\ \ \\ \ \\ \ \\ \_ \_____\\____/ \__\\____//__________\\__\__\__\\____/ \_____\\__\__\\___\
The automount(8) was started in 2013 and lives still today. Its used as chosen automounting solution in the GhostBSD distribution. The automount(8) uses FreeBSD’s devd(8) events for the mount/unmount actions. It currently supports most popular file systems such as:
- NTFS
- MSDOS
- exFAT
- EXT2
- EXT3
- EXT4
- UFS
- XFS
- HFS
- MTP
- ISO9660
The automount(8) source is available on GitHub here:
https://github.com/vermaden/automount
More information and comparison to other automount solutions on FreeBSD is available here:
The automount(8) in action.
lsblk(8)
___ ___ ___ __ _ _ _____ \ \ __\__\__\ \ \ __ / / / \ \ \/ __/ \ \ \/ // / / . \ \ \___ \ \ \ \_ \\ \ \ \ / \___\__/\____/\___\/\_\\_\_\____\/
The lsblk(8) was started as proof of concept in 2016 but finally in 2019 I got back to it and made it usable/production ready.
The lsblk(8) source is available on GitHub here:
https://github.com/vermaden/lsblk
I also made dedicated article about lsblk(8) here:
- List Block Devices on FreeBSD lsblk(8) StyleΒ [2019/09]
The lsblk(8) in action.
Scripts
Various scripts I have written across the years.
They are available on GitHub here:
https://github.com/vermaden/scripts