DEV Community

Alfonso Siciliano
Alfonso Siciliano

Posted on

1

portconfig

The FreeBSD Operating Systems provides the Ports Collection to allow a simple way for users and administrators to install applications, to know more https://www.freebsd.org/ports/.

It is possible to configure a port before the building and installation, ports-mgmt/dialog4ports is a well known TUI utility for the port options, unfortunately dialog4ports depends on non-permissive open source software. portconfig is a new utility to provide the same features of dialog4ports, it and its dependecies (bsddialog and ncurses) are completely permissive.

Getting Started:

$ git clone https://gitlab.com/alfix/portconfig.git
$ cd portconfig
$ make
Enter fullscreen mode Exit fullscreen mode

Now edit /usr/ports/Mk/bsd.commands.mk, comment DIALOG4PORTS and add the absolute path to portconfig:

...
#DIALOG4PORTS?= ${LOCALBASE}/bin/dialog4ports
DIALOG4PORTS?= /absolute/path/to/portconfig
...
Enter fullscreen mode Exit fullscreen mode

Now make config uses portconfig instead of dialog4ports*, for example:

# cd /usr/ports/editor/vim
# make config
Enter fullscreen mode Exit fullscreen mode

It is possible to customize portconfig via environment variables, for example to set the dialog4ports theme (properly dialog) with tcsh:

# env PORTCONFIGTHEME="dialog" make config
Enter fullscreen mode Exit fullscreen mode

Other variables:

  • D4PHEIGHT: hight (otherwise autosize)
  • D4PWIDTH: width (otherwise autosize)
  • D4PFULLSCREEN: fullscreen mode
  • D4PALIGNCENTER: align menu text to centre (default left)
  • D4PASCIILINES: draw borders with + - | charachters

Please NOTE: portconfig is under development and distributed without any warranty.

Project repository https://gitlab.com/alfix/portconfig,
Happy Hacking!

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read full post →

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more