Compare commits

...

4 commits

Author SHA1 Message Date
Geoffrey Frogeye 8c45c1989c
Fix time syncing
Can't believe I was ~5 seconds off on all my computers for this long x)
2024-12-25 15:22:27 +01:00
Geoffrey Frogeye 0ac79c3d0c
Add lazyjj as a test 2024-12-23 21:25:27 +01:00
Geoffrey Frogeye 128bdc5004
Review jjui PR 2024-12-20 23:45:13 +01:00
Geoffrey Frogeye b61685f677
Upgrade whisperx 2024-12-20 23:24:55 +01:00
6 changed files with 45 additions and 48 deletions

View file

@ -4,8 +4,7 @@
inputs = { inputs = {
# Packages # Packages
nixpkgs.url = "nixpkgs/nixos-24.11"; nixpkgs.url = "nixpkgs/nixos-24.11";
onixpkgs.url = "nixpkgs/64b80bfb316b57cdb8919a9110ef63393d74382a"; jjuinixpkgs.url = "github:Adda0/nixpkgs/jjui"; # Testing PR
unixpkgs.url = "nixpkgs/master";
labellenixpkgs.url = "github:FabianRig/nixpkgs/update-labelle-1.3.2"; # Current 24.11 version doesn't match dependencies labellenixpkgs.url = "github:FabianRig/nixpkgs/update-labelle-1.3.2"; # Current 24.11 version doesn't match dependencies
# OS # OS
disko = { disko = {

View file

@ -2,12 +2,8 @@
pkgs, pkgs,
lib, lib,
config, config,
onixpkgs,
... ...
}: }:
let
opkgs = import onixpkgs { inherit (pkgs) system; };
in
{ {
config = lib.mkIf config.frogeye.extra { config = lib.mkIf config.frogeye.extra {
programs = { programs = {
@ -33,7 +29,7 @@ in
# Communication # Communication
signal-desktop signal-desktop
(opkgs.callPackage ./whisperx.nix { }) # Transcribe voice messages (pkgs.callPackage ./whisperx.nix { }) # Transcribe voice messages
# downloading # downloading
# transmission TODO Collision if both transmissions are active? # transmission TODO Collision if both transmissions are active?

View file

@ -1,15 +1,15 @@
{ {
pkgs ? import <nixpkgs> { }, pkgs ? import <nixpkgs> { },
}: }:
pkgs.python3Packages.buildPythonPackage { pkgs.python3Packages.buildPythonPackage rec {
pname = "whisperx"; pname = "whisperx";
version = "2024-08-19"; version = "3.2.0";
# pypi doesn't have the requirements.txt file, and it's required # pypi doesn't have the requirements.txt file, and it's required
src = pkgs.fetchFromGitHub { src = pkgs.fetchFromGitHub {
owner = "m-bain"; owner = "m-bain";
repo = "whisperX"; repo = "whisperX";
rev = "9e3a9e0e38fcec1304e1784381059a0e2c670be5"; # git doesn't have tags rev = "v${version}"; # git doesn't have tags
hash = "sha256-IVtn9fe/yi4+fbH57s9LoiREnMZ2nhEObp1a4R/7gHg="; hash = "sha256-JQvyR9JW8OiSRI0eywTyWB4VMXmu6cTpBekBWonoJa4=";
}; };
pyproject = true; pyproject = true;
dependencies = [ dependencies = [
@ -29,6 +29,12 @@ pkgs.python3Packages.buildPythonPackage {
pkgs.python3Packages.pandas pkgs.python3Packages.pandas
pkgs.python3Packages.nltk pkgs.python3Packages.nltk
]; ];
pythonRelaxDeps = true;
# torchaudio: 2.5.1a0 is >=2, despite dependency check saying otherwise
# ctranslate2: was pinned to 4.4.0 to fix some nvidia pinning issue or whatnot
# pyannote-audio: not sure what pins this to 3.1.1, but 3.3.1 works fine
# For some reason pyannote-audio doesn't get relaxed when listed in a pythonRelaxDeps array,
# hence why using true
build-system = [ build-system = [
pkgs.python3Packages.setuptools pkgs.python3Packages.setuptools
]; ];

View file

@ -2,15 +2,18 @@
pkgs, pkgs,
lib, lib,
config, config,
jjuinixpkgs,
... ...
}: }:
let let
cfg = config.programs.git; cfg = config.programs.git;
jjuipkgs = import jjuinixpkgs { inherit (pkgs) system; };
in in
{ {
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
home.packages = [ home.packages = [
(pkgs.callPackage ./jjui.nix { }) jjuipkgs.jjui
pkgs.lazyjj
(pkgs.writeShellApplication { (pkgs.writeShellApplication {
name = "git-sync"; name = "git-sync";
text = ( text = (

View file

@ -1,21 +0,0 @@
{ buildGoModule, fetchFromGitHub }:
buildGoModule {
pname = "jjui";
version = "2024-11-28";
src = fetchFromGitHub {
owner = "GeoffreyFrogeye";
repo = "jjui";
rev = "push-sszqvsmvqxmy"; # base16 colors
sha256 = "sha256-jNi5Ek3Qy/MojlQXBNlqREy7UxnyMaJuUtKPysWBoNU=";
};
vendorHash = "sha256-kg5b3tzwyAhn00GwdUDf4OdYZvCJZHgkgpzHFWy5SxI=";
postInstall = ''
mv $out/bin/cmd $out/bin/jjui
'';
doCheck = false; # Some tests are not working
}

View file

@ -53,24 +53,38 @@ in
}) })
]; ];
# wireless support via wpa_supplicant # wireless support via wpa_supplicant
networking.wireless = { networking = {
enable = true; # Tell the time synchronisation service when we got/lost the connection
extraConfig = '' dhcpcd.runHook = ''
country=NL if $if_up; then
${config.services.chrony.package}/bin/chronyc online
elif $if_down; then
${config.services.chrony.package}/bin/chronyc offline
fi
''; '';
# Public wireless networks
networks = lib.genAttrs [ wireless = {
"EurostarTrainsWiFi" enable = true;
"_SNCF gare-gratuit" extraConfig = ''
"_SNCF_WIFI_INOUI" country=NL
"Wifi in de trein" '';
"WiFi in de trein" # Public wireless networks
"_WIFI_LYRIA" networks = lib.genAttrs [
"WIFIonICE" "EurostarTrainsWiFi"
] (ssid: { }); "_SNCF gare-gratuit"
userControlled.enable = true; # Allow some control with wpa_cli "_SNCF_WIFI_INOUI"
"Wifi in de trein"
"WiFi in de trein"
"_WIFI_LYRIA"
"WIFIonICE"
] (ssid: { });
userControlled.enable = true; # Allow some control with wpa_cli
};
}; };
# Wait until there's a connection to fetch time
services.chrony.serverOption = "offline"; services.chrony.serverOption = "offline";
systemd.services.wifi_apply = { systemd.services.wifi_apply = {
after = [ "wpa_supplicant.service" ]; after = [ "wpa_supplicant.service" ];
wantedBy = [ "wpa_supplicant.service" ]; wantedBy = [ "wpa_supplicant.service" ];