OPNsense community repository by mihak

Private repository of tools and plugins for OPNsense

Repository with packages for OPNsense firewall. Includes some plugins, CLI tools and mirrors of packages from other sources.

To install this repo:

fetch -o /usr/local/etc/pkg/repos/repo-mihak.conf https://repo.mihak.link/repo-mihak.conf && pkg update

Find out what is available in the (installed) repo:

pkg search -g -r repo-mihak \*

Remove this repo from OPNsense:

rm /usr/local/etc/pkg/repos/repo-mihak.conf

(removing the repo will not remove previously installed packages from the repo)

Find out what you have installed from this repo:

pkg query -a '%R %n-%v' | grep repo-mihak

Available packages:


os-theme-dracula: Dracula theme - dark mode only

File: plugins/os-theme-dracula-0.6_1.pkg
Website: https://opnsense.org/
Maintainer: git@0896c69e.anonaddy.com

Dark mode theme based on Dracula

Colors taken from https://draculatheme.com/


os-speedtest-community: Speedtest

File: plugins/os-speedtest-community-0.9_5.pkg
Website: https://opnsense.org/
Maintainer: miha.kralj@outlook.com

An OPNsense wrapper for the speedtest CLI test. Plugin allows speedtests to be executed periodically through CRON, generates history of past tests, shows statistics (avg, min, max) for latency, download and upload results in the dashboard widget.


os-theme-solarized-community: Solarized theme - tracking OS dark mode

File: plugins/os-theme-solarized-community-0.4_1.pkg
Website: https://opnsense.org/
Maintainer: mihak09@gmail.com

The Solarized theme allows inverting color scheme from dark to bright - by injecting a theme toggle in the top right corner. It defaults to the default preference of the OS (Mac or Windows)

Colors and the dark/light flipping concept taken from https://ethanschoonover.com/solarized/


os-ipcheck-community: Verification of public IP address

File: plugins/os-ipcheck-community-0.3.pkg
Website: https://opnsense.org/
Maintainer: miha.kralj@outlook.com

Reporting / IP Check is a plugin that verifies what internet knows about exposed public IP addresses - works with IPv4 and IPv6. Includes widget. ***


speedtest: no description given

File: misc/ookla-speedtest-1.2.0-freebsd13-x86_64.pkg
Website: http://example.com/no-uri-given
Maintainer: support@ookla.com

no description given


opnsense-cli: CLI to manage and monitor OPNsense firewall configuration, check status, change settings, and execute commands.

File: misc/opnsense-cli-0.14.0.pkg
Website: https://github.com/mihakralj/opnsense-cli
Maintainer: miha.kralj@outlook.com

opnsense is a command-line utility for managing, configuring, and monitoring OPNsense firewall systems. It facilitates non-GUI administration, both directly in the shell and remotely via an SSH tunnel. All interactions with OPNsense utilize the same mechanisms as the Web GUI, including staged modifications of config.xml and execution of available configd commands.


tree: Display a tree-view of directories with optional color or HTML output

File: freebsd/tree-2.1.0.pkg
Website: https://mama.indstate.edu/users/ice/tree/
Maintainer: gb@unistra.fr

Tree is a simple utility that displays a tree-view of directories and files. It has options to use ANSI color escape-sequences or ASCII graphic characters, and can also output in HTML format.


tig: Text-mode interface for git

File: freebsd/tig-2.5.8.pkg
Website: https://jonas.github.io/tig/
Maintainer: 0mp@FreeBSD.org

Tig is a git repository browser that additionally can act as a pager for output from various git commands.

When browsing repositories, it uses the underlying git commands to present the user with various views, such as summarized revision log and showing the commit with the log message, diffstat, and the diff.

Using it as a pager, it will display input from stdin and colorize it.


tcpdump: Ubiquitous network traffic analysis tool

File: freebsd/tcpdump-4.99.4_1.pkg
Website: https://www.tcpdump.org/
Maintainer: garga@FreeBSD.org

tcpdump is a ubiquitous network traffic capture tool available in a wide variety of BSD, Linux and UN*X distributions.

Whilst FreeBSD has a vendor branch import of tcpdump in its source tree, the purpose of the port is to provide a means of offering additional, bleeding-edge features which might not make it into the tree.


zsh: The Z shell

File: freebsd/zsh-5.9_3.pkg
Website: https://www.zsh.org/
Maintainer: bapt@FreeBSD.org

Zsh is the Swiss Army knife of shells. It combines the most popular features of every other shell, and then lets you customize every inch of it. Users of bourne-style and C-style shells will feel at home in it.

Zsh does intelligent completion, spell-checking, has a rich syntax for precise globbing, and is fully extensible through plugin systems.

To fire up the zsh completion system, type the following commands:

$ autoload -U compinstall
$ compinstall

ripgrep: Command line search tool

File: freebsd/ripgrep-13.0.0_24.pkg
Website: https://blog.burntsushi.net/ripgrep/
Maintainer: petteri.valkonen@iki.fi

ripgrep is a command line search tool that combines the usability of The Silver Searcher (an ack clone) with the raw speed of GNU grep. ripgrep is fast, cross platform and written in Rust.


rclone: Sync files to and from various cloud services

File: freebsd/rclone-1.64.2.pkg
Website: https://rclone.org/
Maintainer: tremere@cainites.net

Sync files to and from Google Drive, S3, Swift, Cloudfiles, Dropbox and Google Cloud Storage


py39-pip: Tool for installing and managing Python packages

File: freebsd/py39-pip-23.3.1.pkg
Website: https://pip.pypa.io/en/latest/
Maintainer: python@FreeBSD.org

The PyPA recommended tool for installing and managing Python packages.

pip is a replacement for easy_install. It uses mostly the same techniques for finding packages, so packages that were made easy_installable should be pip-installable as well.

pip is meant to improve on easy_install. Some of the improvements:

* All packages are downloaded before installation. Partially-completed
  installation doesn't occur as a result.
* Care is taken to present useful output on the console.
* The reasons for actions are kept track of. For instance, if a package
  is being installed, pip keeps track of why that package was required.
* Error messages should be useful.
* Packages don't have to be installed as egg archives, they can be
  installed flat (while keeping the egg metadata).

pv: Pipe throughput monitor

File: freebsd/pv-1.7.0.pkg
Website: https://www.ivarch.com/programs/pv.shtml
Maintainer: martymac@FreeBSD.org

Pipe Viewer (pv) is a terminal-based tool for monitoring the progress of data through a pipeline. It can be inserted into any normal pipeline between two processes to give a visual indication of how quickly data is passing through, how long it has taken, how near to completion it is, and an estimate of how long it will be until completion.


node20: V8 JavaScript for client and server

File: freebsd/node20-20.9.0.pkg
Website: https://nodejs.org/
Maintainer: sunpoet@FreeBSD.org

Node.js is a JavaScript runtime built on Chrome’s V8 JavaScript engine. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. Node.js’ package ecosystem, npm, is the largest ecosystem of open source libraries in the world.


node: V8 JavaScript for client and server (meta port)

File: freebsd/node-20.9.0_1.pkg
Website: https://nodejs.org/
Maintainer: sunpoet@FreeBSD.org

Node.js is a JavaScript runtime built on Chrome’s V8 JavaScript engine. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. Node.js’ package ecosystem, npm, is the largest ecosystem of open source libraries in the world.


ngrep: Network grep

File: freebsd/ngrep-1.45_4.pkg
Website: https://ngrep.sourceforge.net/
Maintainer: logan@elandsys.com

ngrep strives to provide most of GNU grep’s common features, applying them to the network layer.

ngrep a pcap-aware tool that will allow you to specify extended regular expressions to match against data payloads of packets. It currently recognizes TCP, UDP, and ICMP across Ethernet, PPP, SLIP, FDDI, Token Ring and null interfaces, and understands BPF filter logic in the same fashion as more common packet sniffing tools, like tcpdump and snoop.


neofetch: Fast, highly customizable system info script

File: freebsd/neofetch-7.1.0_1.pkg
Website: https://github.com/dylanaraps/neofetch
Maintainer: pkubaj@FreeBSD.org

This script gathers info about your system and prints it to the terminal next to an image, your distro’s logo or any ascii art of your choice!


mpc: Library of complex numbers with arbitrarily high precision

File: freebsd/mpc-1.3.1_1.pkg
Website: https://www.multiprecision.org/mpc/
Maintainer: gerald@FreeBSD.org

Mpc is a C library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result. It is built upon and follows the same principles as Mpfr. The library is written by Andreas Enge, Philippe Theveny and Paul Zimmermann and is distributed under the Gnu Lesser General Public License, either version 2.1 of the license, or (at your option) any later version. The Mpc library has been registered in France by the Agence pour la Protection des Programmes on 2003-02-05 under the number IDDN FR 001 060029 000 R P 2003 000 10000.


mosh: Mobile terminal that supports intermittent connectivity

File: freebsd/mosh-1.4.0.pkg
Website: https://mosh.org/
Maintainer: zi@FreeBSD.org

Remote terminal application that allows roaming, supports intermittent connectivity, and provides intelligent local echo and line editing of user keystrokes.

Mosh is a replacement for SSH. It’s more robust and responsive, especially over Wi-Fi, cellular, and long-distance links.


lsof: Lists information about open files (similar to fstat(1))

File: freebsd/lsof-4.97.0,8.pkg
Website: https://github.com/lsof-org/lsof
Maintainer: ler@FreeBSD.org

Lsof (LiSt Open Files) lists information about files that are open by the running processes. An open file may be a regular file, a directory, a block special file, a character special file, an executing text reference, a library, a stream or a network file (Internet socket, NFS file or Unix domain socket).

See also fstat(1) in the base system.


libsmi: Library to access SMI MIB information

File: freebsd/libsmi-0.4.8_1.pkg
Website: https://www.ibr.cs.tu-bs.de/projects/libsmi/
Maintainer: saper@saper.info

The purpose of libsmi is to give network management applications a concise programmer-friendly interface to access MIB module information, separate the knowledge on SMI from the main parts of management applications, allow to add new kinds of MIB repositories without the need to adapt applications that make use of libsmi.

There are also simple tools to handle MIBs included.


libpcap: Ubiquitous network traffic capture library

File: freebsd/libpcap-1.10.4.pkg
Website: https://www.tcpdump.org/
Maintainer: garga@FreeBSD.org

libpcap is a ubiquitous network traffic capture library used by a wide variety of BSD, Linux and UN*X applications.

Whilst FreeBSD has a vendor branch import of libpcap in its source tree, the purpose of the port is to provide a means of offering additional, bleeding-edge features which might not make it into the tree.


libgit2: Portable, pure C implementation of the Git core

File: freebsd/libgit2-1.7.1.pkg
Website: https://libgit2.github.com/
Maintainer: mfechner@FreeBSD.org

libgit2 is…

licensed under a very permissive license so you can use it anywhere faster than any other Git library written in standards compliant C99 completely multi-platform: Windows, Linux, Mac OS X, xBSD compiled natively under all platforms (yes, even MSVC on Windows) re-entrant, with sane error handling designed with a solid and consistent API available as bindings for all major scripting languages


libconfuse: Configuration file parsing library

File: freebsd/libconfuse-3.3_2.pkg
Website: https://savannah.nongnu.org/projects/confuse/
Maintainer: otis@FreeBSD.org

libConfuse is a configuration file parser library, licensed under the terms of the ISC, and written in C. It supports sections and (lists of) values (strings, integers, floats, booleans or other sections), as well as some other features (such as single/double-quoted strings, environment variable expansion, functions and nested include statements). It makes it very easy to add configuration file capability to a program using a simple API.

The goal of libConfuse is not to be the configuration file parser library with a gazillion of features. Instead, it aims to be easy to use and quick to integrate with your code. libConfuse was called libcfg before, but was changed to not confuse with other similar libraries.

Project homepage:


lftp: Shell-like command line FTP client

File: freebsd/lftp-4.9.2.pkg
Website: https://lftp.tech/
Maintainer: martymac@FreeBSD.org

LFTP is a shell-like command line ftp client. It is reliable: can retry operations and does reget automatically. It can do several transfers simultaneously in background. You can start a transfer in background and continue browsing the ftp site or another one. This all is done in one process. Background jobs will be completed in nohup mode if you exit or close modem connection. Lftp has reput, mirror, reverse mirror among its features.


http-parser: HTTP request/response parser written in C

File: freebsd/http-parser-2.9.4.pkg
Website: https://github.com/nodejs/http-parser
Maintainer: danfe@FreeBSD.org

This is a parser for HTTP messages written in C. It parses both requests and responses. The parser is designed to be used in performance HTTP applications. It does not make any system calls nor allocations, it does not buffer data, it can be interrupted at anytime. Depending on the architecture, it only requires about 40 bytes of data per message stream (in a web server that is per connection).


htop: Better top(1) - interactive process viewer

File: freebsd/htop-3.2.2_1.pkg
Website: https://htop.dev/
Maintainer: gaod@hychen.org

htop is an enhanced version of top, the interactive process viewer, which can display the list of processes in a tree form.

Comparison between ‘htop’ and ‘top’

* In 'htop' you can scroll the list vertically and horizontally
to see all processes and full command lines.
* In 'top' you are subject to a delay for each unassigned
key you press (especially annoying when multi-key escape
sequences are triggered by accident).
* 'htop' starts faster ('top' seems to collect data for a while
before displaying anything).
* In 'htop' you don't need to type the process number to
kill a process, in 'top' you do.
* In 'htop' you don't need to type the process number or
the priority value to renice a process, in 'top' you do.
* In 'htop' you can kill multiple processes at once.
* 'top' is older, hence, more tested.

gping: Ping with graph

File: freebsd/gping-1.15.1.pkg
Website: https://github.com/orf/gping
Maintainer: ehaupt@FreeBSD.org

Ping, but with a graph.

Comes with the following super-powers:


goaccess: Real-time web log analyzer

File: freebsd/goaccess-1.8.1_1.pkg
Website: https://goaccess.io
Maintainer: adamw@FreeBSD.org

GoAccess is an open source real-time web log analyzer and interactive viewer that runs in a terminal or through your browser.

It can parse a variety of web log formats, including common and combined log formats, caddy JSON, and many more. Because it is a log parser, it does not inject anything into your website and does not require any scripts or weird 1-pixel images.

GoAccess outputs HTML full of analytics, or runs interactively in console, continually updated via websockets.


go120: Go programming language

File: freebsd/go120-1.20.8.pkg
Website: https://golang.org
Maintainer: go@FreeBSD.org

Go is an open source programming environment that makes it easy to build simple, reliable, and efficient software.


go: Meta-port for the default version of the Go programming language

File: freebsd/go-1.20,2.pkg
Website: https://golang.org
Maintainer: go@FreeBSD.org

Go is an open source programming environment that makes it easy to build simple, reliable, and efficient software.

This is a meta port for the default version of Go, it provides symbolic links called go and gofmt.


rust: Language with a focus on memory safety and concurrency

File: freebsd/rust-1.73.0.pkg
Website: https://www.rust-lang.org/
Maintainer: rust@FreeBSD.org

Rust is an open-source systems programming language that runs blazingly fast, prevents almost all crashes, and eliminates data races. Some of its features:


fzf: Blazing fast command-line fuzzy finder

File: freebsd/fzf-0.42.0.pkg
Website: https://github.com/junegunn/fzf/
Maintainer: dmgk@FreeBSD.org

FZF is a general-purpose command-line fuzzy finder.


fish: User friendly command line shell

File: freebsd/fish-3.6.1_1.pkg
Website: https://fishshell.com/
Maintainer: asomers@FreeBSD.org

fish is a user friendly commandline shell intended mostly for interactive use.


fd: CUI-based file and directory management tool

File: freebsd/fd-3.01j.pkg
Website: https://hp.vector.co.jp/authors/VA012337/soft/fd/
Maintainer: ports@FreeBSD.org

FD' (FDclone) is a CUI-based file and directory management tool which allows you to browse and manipulate directories and files with an easy and intuitive user interface. It also has a built-in Bourne-shell compatible shell which can be run stand-alone by the name offdsh’.

This version is a clone of FD for DOS (AT and PC9801) designed and written by A. Idei (SDI00544@niftyserve.or.jp).


exa: Modern replacement for ls

File: freebsd/exa-0.10.1_27.pkg
Website: https://the.exa.website/
Maintainer: mikael@FreeBSD.org

Exa is a modern replacement for ls. It uses colours for information by default, helping you distinguish between many types of files, such as whether you are the owner, or in the owning group. It also has extra features not present in the original ls, such as viewing the Git status for a directory, or recursing into directories with a tree view. Exa is written in Rust, so it’s small, fast, and portable.


drill: HTTP load testing application written in Rust

File: freebsd/drill-0.8.3_3.pkg
Website: https://github.com/fcsonline/drill
Maintainer: yuri@FreeBSD.org

Drill is a HTTP load testing application written in Rust. The main goal for this project is to build a really lightweight tool as alternative to other that require JVM and other stuff.

You can write benchmark files, in YAML format, describing all the stuff you want to test.

It was inspired by Ansible syntax because it is really easy to use and extend.


doggo: Modern command-line DNS client (like dig)

File: freebsd/doggo-0.5.7,1.pkg
Website: https://github.com/mr-karan/doggo
Maintainer: yuri@FreeBSD.org

doggo is a modern command-line DNS client (like dig) written in Golang. It outputs information in a neat concise manner and supports protocols like DoH, DoT as well.

Features: * Human readable output - supports colors and tabular format. * Supports JSON format - can be useful while writing scripts. * Has support for multiple transport protocols: DNS over HTTPS (DoH) DNS over TLS (DoT) DNS over TCP DNS over UDP * Supports ndots and search configurations from resolv.conf or command-line arguments. * Supports multiple resolvers at once. * Supports IPv4 and IPv6 both. * Available as a web tool as well: https://doggo.mrkaran.dev. * Shell completions for zsh and fish.


dog: Command-line DNS client

File: freebsd/dog-0.1.0_28.pkg
Website: https://dns.lookup.dog/
Maintainer: lcook@FreeBSD.org

Command-line DNS client, like dig.

It has colourful output, understands normal command-line argument syntax, supports the DNS-over-TLS and DNS-over-HTTPS protocols, and can emit JSON.


darkhttpd: Simple, static web server

File: freebsd/darkhttpd-1.14.pkg
Website: https://unix4lyfe.org/darkhttpd/
Maintainer: henrichhartzer@tuta.io

darkhttpd is a simple, static web server. No configuration file, no CGI.


curlie: Frontend to cURL that adds the ease of use of HTTPie

File: freebsd/curlie-1.6.7_15.pkg
Website: https://curlie.io/
Maintainer: 0mp@FreeBSD.org

If you like the interface of HTTPie but miss the features of curl, curlie is what you are searching for. Curlie is a frontend to curl that adds the ease of use of httpie, without compromising on features and performance. All curl options are exposed with syntax sugar and output formatting inspired from httpie.


gcc12: GNU Compiler Collection 12

File: freebsd/gcc12-12.2.0_6.pkg
Website: https://gcc.gnu.org
Maintainer: salvadore@FreeBSD.org

GCC, the GNU Compiler Collection, supports a number of languages. This port installs the C, C++, and Fortran front ends as gcc12, g++12, and gfortran12, respectively.

Gerald Pfeifer gerald@FreeBSD.org


btop: Monitor of resources

File: freebsd/btop-1.2.13_1.pkg
Website: https://github.com/aristocratos/btop
Maintainer: pkubaj@FreeBSD.org

Resource monitor that shows usage and stats for processor, memory, disks, network and processes.

C++ version and continuation of bashtop and bpytop.


bottom: Graphical process and system monitor

File: freebsd/bottom-0.9.6_2.pkg
Website: https://github.com/ClementTsang/bottom
Maintainer: adamw@FreeBSD.org

Bottom (btm) is a terminal process/system visualization and management tool. Features include:

Graphical visualization widgets for:
    CPU usage over time, at an average and per-core level
    RAM and swap usage over time
    Network I/O usage over time
with support for zooming in/out the current time interval displayed.

Widgets for displaying info about:
    Disk capacity/usage
    Temperature sensors
    Battery usage

A process widget for displaying, sorting, and searching info about
processes, as well as support for:
    Kill signals
    Tree mode

Custom and pre-built colour themes
Changing the default behaviour of some widgets
Changing the layout of widgets
Filtering out entries in disk and temperature widgets
An htop-inspired basic mode (btm -b)

caddy: Fast, cross-platform HTTP/2 web server with automatic HTTPS

File: freebsd/caddy-2.7.5.pkg
Website: https://caddyserver.com
Maintainer: adamw@FreeBSD.org

Caddy is a powerful, enterprise-ready, open source web server with automatic HTTPS written in Go.

Features:


bmon: Human-readable bandwidth monitor and rate estimator

File: freebsd/bmon-4.0.pkg
Website: https://github.com/tgraf/bmon
Maintainer: michelle@sorbs.net

bmon is a monitoring and debugging tool to capture networking related statistics and prepare them visually in a human friendly way. It features various output methods including an interactive curses user interface and a programmable text output for scripting.


bat: Clone of cat with syntax highlighting

File: freebsd/bat-0.23.0_7.pkg
Website: https://github.com/sharkdp/bat
Maintainer: pizzamig@FreeBSD.org

A cat(1) clone with syntax highlighting and Git integration.


axel: Lightweight CLI download accelerator

File: freebsd/axel-2.17.11.21.pkg
Website: https://github.com/axel-download-accelerator/axel
Maintainer: yuri@FreeBSD.org

Axel tries to accelerate the download process by using multiple connections per file, and can also balance the load between different servers.

Axel tries to be as light as possible, so it might be useful on byte-critical systems.

Axel supports HTTP, HTTPS, FTP and FTPS protocols.


arpwatch: Monitor arp & rarp requests

File: freebsd/arpwatch-3.4.pkg
Website: https://ee.lbl.gov/downloads/arpwatch/
Maintainer: leres@FreeBSD.org

This package contains tools that monitors ethernet activity and maintains a database of ethernet/ip address pairings. It also reports certain changes via email.


binutils: GNU binary tools

File: freebsd/binutils-2.40_4,1.pkg
Website: https://www.gnu.org/software/binutils/
Maintainer: cy@FreeBSD.org

The GNU Binutils are a collection of binary tools. The main ones are:

Most of these programs use BFD, the Binary File Descriptor library, to do low-level manipulation. Many of them also use the opcodes library to assemble and disassemble machine instructions.

This port may be used as a replacement for the system binutils and support features from the latest versions of GCC.

For cross-compilation, see the devel/cross-binutils port.