Files
voculinux/flake.nix
T
soubarnak ea7be5f111 feat(identity): rename user-visible identity to voculinux with one-time legacy import
The fork takes its own name everywhere a user can see it: binaries
(voculinux, voculinux-gui), desktop entry, autostart, tray, D-Bus
namespace (com.voculinux.Voculinux, no alias for the old name),
config/data/cache dirs, single-instance lock, IBus engine identity,
tray icons, resource prefixes, VOCULINUX_* environment names, and the
update-checker user agent. The internal Python module stays vocalinux
and the distribution metadata keeps the upstream URLs as provenance.

On first run a previous Vocalinux install's config.json, custom
dictionary, and portal restore token are copied once into the new
locations (new config always wins, no merge, no write-back); models
re-resolve through the pinned-checksum download path. An offline
naming-sweep test proves no old-name strings remain on user-visible
surfaces outside the allowlist.

Refs #18
2026-11-06 01:29:39 +05:30

61 lines
1.7 KiB
Nix

{
description = "Voculinux — free, offline voice dictation for Linux";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
};
outputs =
{ self, nixpkgs }:
let
systems = [
"x86_64-linux"
"aarch64-linux"
];
forAllSystems = nixpkgs.lib.genAttrs systems;
in
{
packages = forAllSystems (
system:
let
pkgs = nixpkgs.legacyPackages.${system};
in
{
voculinux = pkgs.python3Packages.callPackage ./packaging/nix/package.nix {
pywhispercpp = pkgs.python3Packages.callPackage ./packaging/nix/pywhispercpp.nix { };
src = self;
};
default = self.packages.${system}.voculinux;
}
);
apps = forAllSystems (system: {
voculinux = {
type = "app";
program = "${self.packages.${system}.voculinux}/bin/voculinux";
};
default = self.apps.${system}.voculinux;
});
overlays.default = final: prev: {
voculinux = self.packages.${prev.stdenv.hostPlatform.system}.voculinux;
};
nixosModules.voculinux =
{ pkgs, lib, ... }:
{
imports = [ ./packaging/nix/module.nix ];
programs.voculinux.package = lib.mkDefault self.packages.${pkgs.stdenv.hostPlatform.system}.voculinux;
};
nixosModules.default = self.nixosModules.voculinux;
homeManagerModules.voculinux =
{ pkgs, lib, ... }:
{
imports = [ ./packaging/nix/home-manager.nix ];
programs.voculinux.package = lib.mkDefault self.packages.${pkgs.stdenv.hostPlatform.system}.voculinux;
};
homeManagerModules.default = self.homeManagerModules.voculinux;
};
}