BoxyBSD is an innovative service hosted and developed by gyptazy that provides a unique opportunity for enthusiasts, developers, and curious minds to explore the powerful FreeBSD operating system in a risk-free and hassle-free environment. BoxyBSD offers free FreeBSD virtual machines (VMs) served as jails, allowing users to immerse themselves in the FreeBSD experience without the need for complex setups or installations. Embrace the freedom to explore, innovate, and debug with BoxyBSD – your gateway to a temporary yet enriching FreeBSD experience! Each jail has its own public IPv6 address, located in Switzerland. With BoxyBSD, users can enjoy a limited lifetime of 12 hours to play around with FreeBSD, experiment with configurations, and engage in debugging activities. This time window provides ample opportunity for users to delve into the world of FreeBSD, understanding its robust features and optimizing their skills. Whether you're a seasoned developer seeking a quick testing ground or .... [read more]
The BSD Cafe is a thriving community that goes beyond being just a gathering of BSD enthusiasts; it serves as a comprehensive repository of knowledge and experiences shared by its members. The platform features in-depth reviews of BSD-related software and hardware, providing valuable insights into real-world experiences and hardware compatibility. The community aims to assist individuals in making informed decisions when building or optimizing systems for BSD but Linux users are of course also welcome. The founder and guiding spirit of BSD Cafe, Stefano Marinelli , is introduced as our "Barista" and had the idea to create a modern place for BSD enthusiasts which does not only target experienced users. It is also a place for beginners to start and learn using BSD based systems. Beginners will be guided and taugth in systems like FreeBSD , NetBSD , OpenBSD , DragonFlyBSD , helloSystem and all other BSD based systems. Linux .... [read more]
Finally, I rejoined the ntppool.org project again. Several years ago, I already contributed with several Stratum 1 systems which were connected to a Stratum 0 (GPS). Nowadays, most ones do not care about NTP and time synchronization anymore but it gets more important than ever when it comes to encryption, authentication and logging. Therefore, I took my old Stratum 0 GPS systems and created four new ntp server which are also included within the nto pool project. But of course, you are also able to use them directly without using the pool. ntp01.gyptazy.ch (stratum 1) IPv4: 37.114.42.55 IPv6: 2a00:ccc1:102:24c::11 Location: Frankfurt, Germany ntp02.gyptazy.ch (stratum 1) IPv4: 37.114.55.6 IPv6: 2a00:ccc1:102:26c::12 Location: Frankfurt, Germany ntp03.gyptazy.ch (stratum 1) IPv4: 45.129.181.241 IPv6: 2a03:4000:47:1f1::1337 Location: Nürnberg, Germany ntp04.gyptazy.ch (stratum 1) IPv4: 45.157.178.14 IPv6: 2a03:4000:4b:6e::1337 Location: Nürnberg, Germany You can also find some further stats here . .... [read more]
manpageblog just got released in version 1.1. manpageblog is a small, lightweight blog engine written in Python and offers several advantages in a look of a man page (Unix like manual page). Changelog: Added: * Add logo (site_image) support for RSS feed * Add Open Graph support for social media platforms Fixed: * Fix dynamic word wrap limit of words * Validate function for passed options manpageblog is fully open-source. You can download manpageblog and the code on manpageblog @github . A preview is available on manpageblog.org . .... [read more]
manpageblog just got released in version 1.0. manpageblog is a small, lightweight blog engine written in Python and offers several advantages in a look of a man page (Unix like manual page). Features: * Small and leightweight * SEO optimized * RSS support * Opt. dark mode (theme support) * Multi blog support * Pure HTML output (no JS, no PHP) * Fully written in Python manpageblog is fully open-source. You can download manpageblog and the code on manpageblog @github . A preview is available on manpageblog.org . .... [read more]
This mini How-To guide describes how to install Semaphore UI 2.8.75 in addition to Ansible 8.5 on Linux Debian 12 (Bookworm). Semaphore provides a modern and responsive webUI for running Ansible playbooks as an alternative to Ansible AWX (Tower) and the new Automation Platform. Semaphore is an open-source project written in GoLang and easy to use, install & to maintain. MySQL/MariaDB, PostgreSQL and BoltDB are supported as backend DBs. Within this HowTo MariaDB is used. Please also see the official docs here. Features: * Build, deploy & rollback * Group playbooks to projects * Manage environments, inventories, repositories and access keys * Run playbooks from the browser * Responsive UI allows the use of Semaphore on mobile devices * Run playbooks by schedule * View detailed logs of any playbook runs, at any time * Delegate other users the running of playbooks * Get notifications about playbook runs Prerequisites: In .... [read more]
Changelog Fragments Creator just got released in V1.3. Changelog Fragments Creator (a changelog generator in Python) may be used in development setups where working on a single CHANGELOG.md file might result in ongoing merge conflicts due to too many changes on the same file. This is where Changelog Fragments Creator steps in to solve this by creating YAML based files for each PR according to its planned release version. The output format is based on Keep a Changelog, and this project adheres to Semantic Versioning. This changelog creator is written for minimal setups to be usable across almost all systems (platforms and distributions). Therefore, some dirty stunts were needed to avoid templating (jinja2), etc. to drop some imports that would require additional dependencies. Changelog Fragments Creator is fully open-source. You can find the sources and download it: changelog-fragments-creator V1.3 @github . .... [read more]
Creating packages for Debian (Ubuntu), RedHat (CentOS, Fedora) & FreeBSD can easily be done by CMake’s CPacks feature. This provides great possibilities to create packages from sources but also to ship just configuration files with a single config for one or more distributions. In general, it also supports creating packages from different distributions. My tech talk provides a short examples how to use it by packaging the changelog fragments creator tool (see also my blog post regarding this here). Please note, that this is not a HowTo rather than an interactive talk where things are described in detail. Resources: Presentation: Web/HTML Sources: gyptazy/ tech-talks (Github) .... [read more]
Changelog Fragments Creator just got released in V1.2. Changelog Fragments Creator (a changelog generator in Python) may be used in development setups where working on a single CHANGELOG.md file might result in ongoing merge conflicts due to too many changes on the same file. This is where Changelog Fragments Creator steps in to solve this by creating YAML based files for each PR according to its planned release version. The output format is based on Keep a Changelog, and this project adheres to Semantic Versioning. This changelog creator is written for minimal setups to be usable across almost all systems (platforms and distributions). Therefore, some dirty stunts were needed to avoid templating (jinja2), etc. to drop some imports that would require additional dependencies. Changelog Fragments Creator is fully open-source. You can find the sources and download it: changelog-fragments-creator V1.2 @github . .... [read more]
Changelog Fragments Creator just got released in V1.1. Changelog Fragments Creator (a changelog generator in Python) may be used in development setups where working on a single CHANGELOG.md file might result in ongoing merge conflicts due to too many changes on the same file. This is where Changelog Fragments Creator steps in to solve this by creating YAML based files for each PR according to its planned release version. The output format is based on Keep a Changelog, and this project adheres to Semantic Versioning. This changelog creator is written for minimal setups to be usable across almost all systems (platforms and distributions). Therefore, some dirty stunts were needed to avoid templating (jinja2), etc. to drop some imports that would require additional dependencies. Changelog Fragments Creator is fully open-source. You can find the sources and download it: changelog-fragments-creator V1.1 @github . .... [read more]
In an era where our lives are increasingly intertwined with technology, the concept of a digital detox has gained significant traction. A digital detox refers to consciously and temporarily disconnecting from digital devices and online platforms in order to find balance, regain focus, and reconnect with the physical world around us. This practice has become an essential remedy for the modern challenges posed by our hyperconnected lifestyles. In this blog post, we’ll explore the ins and outs of a digital detox, its benefits, and practical tips for successfully incorporating it into your life. The Digital Age’s Impact on Our Lives: The digital age has ushered in remarkable advancements in communication, productivity, and entertainment. However, it has also led to a host of negative consequences that are hard to ignore. The constant barrage of notifications, the pressure to maintain an online presence, and the addictive nature of social media have contributed .... [read more]
Changelog Fragments Creator just got released in V1.0. Changelog Fragments Creator (a changelog generator in Python) may be used in development setups where working on a single CHANGELOG.md file might result in ongoing merge conflicts due to too many changes on the same file. This is where Changelog Fragments Creator steps in to solve this by creating YAML based files for each PR according to its planned release version. The output format is based on Keep a Changelog, and this project adheres to Semantic Versioning. This changelog creator is written for minimal setups to be usable across almost all systems (platforms and distributions). Therefore, some dirty stunts were needed to avoid templating (jinja2), etc. to drop some imports that would require additional dependencies. Changelog Fragments Creator is fully open-source. You can find the sources and download it: changelog-fragments-creator V1.0 @github . .... [read more]
Many DevOps used Vagrant together with VirtualBox (Box) in their default setups to quickly spawn new VMs. However, when switching from AMD64 (Intel architecture) to Apple Silicon (M1/M2/M3) there was a lack of unsupported tools which broke many workflows. Currently, there’s an ARM64 supported build of Virtual Box but it doesn’t support ARM64 guests at all. This makes it necessary to switch to other alternatives. VMware Fusion A solution could lead into a free copy (for personal usage) of VMware Fusion for macOS which also supports ARM64 based guests. This alternative to Virtual Box supports all Apple Silicon Macs and even runs on the newest macOS which might be a pretty good alternative to Virtual Box. However, we still need Vagrant and a dedicated plugin (vagrant-vmware-desktop) for the VMware platform provider. This plugin supports VMware Workstation, VMware Desktop and VMware Fusion. Vagrant can still be installed in the same ways .... [read more]
Unfortunately, many companies still have security policies according to frequently password changes for endusers. Which first sounds like a good idea may fastly result in a less better security – I also often call this security by obscurity. So, why is password rotation a bad idea nowadays? First, let us have a look at the past before year 2000, where users had really short passwords with less than 10 characters. Many dynamic websites (e.g. free mailers, etc.) at that time enforced a password length of 6-10 characters and did not accept any special characters. As a result, it came to the well known passwords like abc123, 12345678, gyptazy2000, gyptazy89 etc. where users created an easy to guess combination of names, birthdates etc. With more compute power, brute force attacks became more easy. As a result, passwords got longer including further special characters. Within the first iteration, many special characters like .... [read more]
Monkey Switcher just got released in V1.2. witch your Bluetooth capable devices like Magic Keyboard 2, Track Pad, AirPods, etc. between multiple Macs (e.g. personal & business) with a single click for macOS. This can especially be helpful to avoid connecting you wired USB-C to Lightning cable to your Magic Keyboard to establish a peering session to another Mac and may fasten up your workflow. However, initially this must be done on all Macs where you like to use this app to be a known and authorized Bluetooth device. This application ships binary versions for amd64 and arm64 architectures of blueutil. Running the application is a toggle – when the Bluetooth device is connected it gets disconnected. If the device is currently disconnected it gets connected. This can be done in combination of multiple Macs where the bluetooth device should be connected to. Monkey Switcher is fully open-source. You can .... [read more]
Now, Garden Linux comes with Firecracker (microVM) images for running heavy workloads. You may also find some more information on Firecracker within my last post. Thanks to nkraetzschmar for adding Firecracker support within the Garden Linux feature system. Next to this, the Pytest pipeline needed further adjustments as well as a new IAAS type to perform tests on microVMs. With my PR feat(pytest): Add Firecracker IAAS for PyTest #1318 I recently added further support for Firecracker images as a new IAAS platform type. The new IAAS takes care for all image and network related adjustments to fit the Pytest’s RemoteClient object requirements. Creating a Garden Linux Firecracker image Creating a Firecracker image is as easy as building regular images and can simply be accomplished by running: Production image: make firecracker # Dev image (autologin, etc.) make firecracker-dev This creates the kernel- & filesystem image artifacts: * kernel image: firecracker_dev-amd64-today-0ee7682b.vmlinux * .... [read more]
While Garden Linux was running with SELinux all the time, Garden Linux finally supports running SELinux in enforcing mode. Within the last few weeks I made several adjustments to make sure we could switch from permissive mode to enforcing. By pushing the last commit , the gardenlinux-selinux-module gets reactivated in synergy with the patched refpolicy package within the Garden Linux build pipeline. All related packages are available on Garden Linux repositories, now. Unluckily, I had many issues based on Debian’s Testing refpolicy package which was a show stopper for several services including casual bash usage after login or systemd-resolved start ups (see also bug #1012755 ). Unfortunately, further bug reports and texting resulted into no solutions. Even no direct solutions could be found on DebConf 2022 by getting in touch with some people directly. Thanks to chrinorse for getting in touch with other ones at DebConf 2022. Therefore, I consider .... [read more]
Finally, my Garden Linux PR feature(build): Add support for macOS #1013 got merged which allows building Garden Linux images on macOS regarding the underlying hardware architecture (Intel and Apple Silicon are supported). As a result, no further Linux virtual machines are needed to create artifacts. This is a big step forwards for all macOS users in usability and also speeds up the whole local build process. Update: With PR Add support for macOS and CentOS (Stream) in startvm #1027 you may also directly run the created images on macOS. .... [read more]
Introducing Monitorix , a versatile, open-source, and lightweight system monitoring tool that excels in overseeing a wide array of services and system resources. Originally crafted for production environments on Linux/UNIX servers, its adaptability extends seamlessly to embedded devices due to its simplicity and compact size. While Monitorix remains a stalwart choice, contemporary implementations may pose challenges. The conventional practice of exposing services to external entities may not always be ideal, prompting the adoption of a reverse proxy like Nginx as a viable solution. However, managing this setup across multiple systems requires additional configurations. To streamline this process, leveraging the Nginx subfilter function emerges as an elegant solution. The following snippet illustrates the implementation of this approach. location /ns01/ { proxy_pass http://ns01.gyptazy.ch:8080/; proxy_redirect default; sub_filter_once off; sub_filter '/monitorix-cgi/' '/ns01/monitorix-cgi/'; sub_filter '/imgs/' '/ns01/imgs/'; sub_filter '/monitorix/imgs/' '/ns01/imgs/'; sub_filter 'monitorixico.png' '/ns01/monitorix/monitorix/monitorixico.png'; sub_filter 'logo_bot.png' 'monitorix/logo_bot.png'; sub_filter 'logo_top.png' 'monitorix/logo_top.png'; proxy_buffering off; proxy_set_header Host $http_host; proxy_set_header X-Real-IP .... [read more]
helloSystem is a new desktop system for creators with a focus on simplicity, elegance, usability and a modern design based on FreeBSD. It follows the “less, but better” philosophy and is purely welcoming users from Mac systems. However, it has been several years since I have used FreeBSD as my daily desktop system – so I worked with another BSD system all the time. Now, it was time again to take a look on FreeBSD and I found helloSystem – I was directly in love. A fresh, modern clean desktop with FreeBSD. Quote from the project: For mere mortals. Welcoming to switchers from macOS. Not just a theme. Not a clone of anything, but something with which the long-time Mac user should feel instantly comfortable. The latest technologies, without the complexities of Linux distributions. Without lockdown. Without Big Brother. The user in full control. Within the first days as my .... [read more]