Add ham radio profile with FLEcli package
Introduces a custom packages overlay (pkgs/) for packages not in nixpkgs. Adds FLEcli v0.1.7 for processing amateur radio logs (SOTA, POTA, WWFF). Enables ham-radio profile on beefy. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
8
common/ham-radio.nix
Normal file
8
common/ham-radio.nix
Normal file
@@ -0,0 +1,8 @@
|
||||
# ABOUTME: Ham radio tools profile for amateur radio operators.
|
||||
# ABOUTME: Provides CLI tools for logging and processing ham radio contacts.
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
environment.systemPackages = [
|
||||
pkgs.custom.flecli
|
||||
];
|
||||
}
|
||||
@@ -67,6 +67,8 @@
|
||||
browser-previews = browser-previews.packages.${prev.stdenv.hostPlatform.system};
|
||||
};
|
||||
|
||||
overlay-custom = import ./pkgs;
|
||||
|
||||
mkHost =
|
||||
system: profile: modules:
|
||||
let
|
||||
@@ -79,7 +81,7 @@
|
||||
(
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
nixpkgs.overlays = [ overlay-unstable overlay-browser-previews ];
|
||||
nixpkgs.overlays = [ overlay-unstable overlay-browser-previews overlay-custom ];
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
}
|
||||
)
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
../../common/cluster-member.nix # Consul + storage clients
|
||||
../../common/cluster-tools.nix # Nomad CLI (no service)
|
||||
../../common/docker.nix # Docker daemon
|
||||
../../common/ham-radio.nix # Ham radio tools (FLEcli)
|
||||
./hardware.nix
|
||||
];
|
||||
|
||||
|
||||
7
pkgs/default.nix
Normal file
7
pkgs/default.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
# ABOUTME: Custom packages overlay for packages not in nixpkgs.
|
||||
# ABOUTME: Adds packages under pkgs.custom.* namespace.
|
||||
final: prev: {
|
||||
custom = {
|
||||
flecli = final.callPackage ./flecli.nix { };
|
||||
};
|
||||
}
|
||||
28
pkgs/flecli.nix
Normal file
28
pkgs/flecli.nix
Normal file
@@ -0,0 +1,28 @@
|
||||
# ABOUTME: FLEcli - Fast Log Entry CLI for amateur radio logging.
|
||||
# ABOUTME: Processes FLE-formatted files into ADIF for SOTA, POTA, WWFF, etc.
|
||||
{
|
||||
lib,
|
||||
buildGoModule,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "flecli";
|
||||
version = "0.1.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "on4kjm";
|
||||
repo = "FLEcli";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-6OFcShgUaK9RwonP6cl8eOD6Cu+F5LHZEUFPjCfWNV0=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-6m01rcewPyy8pUXnIMwjyW+7I08pyJaTDliwTNp3fOM=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Fast Log Entry CLI - process amateur radio logs";
|
||||
homepage = "https://github.com/on4kjm/FLEcli";
|
||||
license = licenses.mit;
|
||||
mainProgram = "FLEcli";
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user