Compare commits

...

7 Commits

11 changed files with 67 additions and 125 deletions

View File

@ -20,18 +20,16 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1686968143, "lastModified": 1690860117,
"narHash": "sha256-NkXmT9ArJBeu56jo/agURQ1pvqrx0nUHi30yM7sttK8=", "narHash": "sha256-srkCfjMlg777HxDVMfhkIFgRhhtuZjIOIyR2ejLYK+Y=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "56799517d0537a6f3e91a5171af8c4bfd82c092e", "rev": "96d403ee2479f2070050353b94808209f1352edb",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "id": "nixpkgs",
"ref": "release-23.05", "type": "indirect"
"repo": "nixpkgs",
"type": "github"
} }
}, },
"root": { "root": {
@ -48,11 +46,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1686968542, "lastModified": 1690856601,
"narHash": "sha256-Gjlj7UeHqMFRAYyefeoLnSjLo8V+0XheIamojNEyTbE=", "narHash": "sha256-OP1w4rwMJscne5ckSfzOjXXQTPzAWM3Mkm4wRmHwCh8=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "01d84cd842e48e89be67e4c2d9dc46aa7709adc5", "rev": "657d170ebe594da9fa32797e38704d45732d0c72",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@ -2,7 +2,6 @@
description = "Syndicate utilities"; description = "Syndicate utilities";
inputs = { inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/release-23.05";
rust = { rust = {
url = "github:oxalica/rust-overlay"; url = "github:oxalica/rust-overlay";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
@ -29,11 +28,35 @@
nimPackages = prev.nimPackages.overrideScope' (final': prev': { nimPackages = prev.nimPackages.overrideScope' (final': prev': {
noiseprotocol = final'.callPackage ./packages/nim/noiseprotocol { }; noiseprotocol = final'.callPackage ./packages/nim/noiseprotocol { };
preserves = final'.callPackage ./packages/preserves-nim { };
syndicate = final'.callPackage ./packages/syndicate-nim { }; preserves = prev'.preserves.overrideAttrs (f: p: {
version = "20230801";
src = prev.fetchFromGitea {
domain = "git.syndicate-lang.org";
owner = "ehmry";
repo = "preserves-nim";
rev = f.version;
sha256 = "sha256-60QsbXMYYfEWvXQAXu7XSpvg2J9YaGKDkDrfclcK6pc=";
};
});
syndicate = prev'.syndicate.overrideAttrs (f: p: {
version = "20230801";
src = prev.fetchFromGitea {
domain = "git.syndicate-lang.org";
owner = "ehmry";
repo = "syndicate-nim";
rev = f.version;
hash = "sha256-/mZGWVdQ5FtZf2snPIjTG2tNFVzxQmxvkKuLCAGARYs=";
};
});
syndicate_utils = syndicate_utils =
final'.callPackage ./packages/syndicate_utils-nim { }; final'.callPackage ./packages/syndicate_utils-nim { };
xdg_open_ng = final'.callPackage ./packages/xdg_open_ng { }; syndicated-open = final'.callPackage ./packages/syndicated-open { };
xdg_open_ng =
builtins.trace "xdg_open_ng has been renamed to syndicated-open"
final'.syndicated-open;
}); });
nix_actor = final.nimPackages.callPackage ./packages/nix_actor { }; nix_actor = final.nimPackages.callPackage ./packages/nix_actor { };

View File

@ -244,12 +244,15 @@ ln -sfn /proc/self/fd/2 /dev/stderr
mkdir -p /dev/.mdadm mkdir -p /dev/.mdadm
info "running mdevd..." info "running mdevd..."
echo '$MODALIAS=.* 0:0 660 @modprobe "$MODALIAS"' >/etc/mdev.conf echo '$MODALIAS=.* 0:0 660 @modprobe --quiet "$MODALIAS"' >/etc/mdev.conf
mdevd -O4 -v 3 & mdevd -O4 -v 3 &
mdevd_pid=$! mdevd_pid=$!
mdevd-coldplug -O4 -v 3 mdevd-coldplug -O4 -v 3
@preLVMCommands@
if test -n "$debug1devices"; then fail; fi if test -n "$debug1devices"; then fail; fi

View File

@ -299,7 +299,7 @@ let
inherit (config.system.build) earlyMountScript; inherit (config.system.build) earlyMountScript;
inherit (config.boot.initrd) checkJournalingFS verbose inherit (config.boot.initrd) checkJournalingFS verbose
preDeviceCommands postDeviceCommands postMountCommands preFailCommands kernelModules; preDeviceCommands postDeviceCommands postMountCommands preFailCommands kernelModules preLVMCommands;
resumeDevices = map (sd: if sd ? device then sd.device else "/dev/disk/by-label/${sd.label}") resumeDevices = map (sd: if sd ? device then sd.device else "/dev/disk/by-label/${sd.label}")
(filter (sd: hasPrefix "/dev/" sd.device && !sd.randomEncryption.enable (filter (sd: hasPrefix "/dev/" sd.device && !sd.randomEncryption.enable

View File

@ -2,7 +2,7 @@
{ {
options.synit.logProgram = lib.mkOption { options.synit.logProgram = lib.mkOption {
type = lib.types.str; type = lib.types.path;
default = pkgs.writeScript "synit-log" '' default = pkgs.writeScript "synit-log" ''
#!${pkgs.execline}/bin/execlineb -P #!${pkgs.execline}/bin/execlineb -P
foreground { ${pkgs.coreutils}/bin/mkdir -p /var/log/synit } foreground { ${pkgs.coreutils}/bin/mkdir -p /var/log/synit }

View File

@ -1,5 +1,5 @@
{ {
imports = [ ./nncp.nix ./ntpd.nix ./sshd.nix ./userSettings.nix ./wifi.nix ]; imports = [ ./ntpd.nix ./sshd.nix ./userSettings.nix ./wifi.nix ];
environment.etc."syndicate/services/configdirs.pr".text = '' environment.etc."syndicate/services/configdirs.pr".text = ''
<require-service <config-watcher "/run/etc/syndicate/services" $.>> <require-service <config-watcher "/run/etc/syndicate/services" $.>>
''; '';

View File

@ -2,13 +2,14 @@
{ {
config = lib.mkIf config.services.ntp.enable { config = lib.mkIf config.services.ntp.enable {
environment.etc."syndicate/services/ssh-keygen.pr".text = let environment.etc."syndicate/services/ntpd.pr".text =
serverList = let serverList = map (s: " -p ${s}") config.networking.timeServers;
lib.lists.concatMap (s: " -p ${s}") config.networking.timeServers; in ''
in '' <require-service <daemon ntpd>>
<require-service <daemon ntpd>> <depends-on <daemon ntpd> <default-route ipv4>>
<depends-on <daemon ntpd> <default-route ipv4>> <daemon ntpd "${pkgs.busybox}/bin/busybox ntpd -d -n ${
<daemon ntpd "${pkgs.busybox}/bin/busybox ntpd -d -n ${serverList}"> toString serverList
''; }">
'';
}; };
} }

View File

@ -1,47 +0,0 @@
{ lib, stdenv, buildNimPackage, fetchFromGitea, fetchFromGitHub, runCommand
, nim-unwrapped, preserves }:
let
compiler = runCommand "compiler.nimble" { inherit (nim-unwrapped) src; } ''
mkdir -p $out
tar xf $src --strip-components=1 -C $out
'';
npeg = fetchFromGitHub {
owner = "zevv";
repo = "npeg";
rev = "1.2.1";
hash = "sha256-kN91cp50ZL4INeRWqwrRK6CAkVXUq4rN4YlcN6WL/3Y=";
};
in buildNimPackage rec {
pname = "preserves";
version = "20230530";
src = fetchFromGitea {
domain = "git.syndicate-lang.org";
owner = "ehmry";
repo = "${pname}-nim";
rev = version;
sha256 = "sha256-IRIBGjv4po8VyL873v++ovqz8Vg6a9Qbh/M1fxpQXvY=";
};
propagatedBuildInputs = [ compiler npeg ];
propagatedNativeBuildInputs =
lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) preserves;
# propagate the utilities of this package for this build platform
preConfigure = "substituteInPlace preserves.nimble --replace '# bin ' 'bin '";
postInstall = ''
pushd $out/bin
for link in preserves_decode preserves_from_json preserves_to_json;
do ln -s preserves_encode $link
done
popd
'';
doCheck = true;
meta = src.meta // {
maintainers = [ lib.maintainers.ehmry ];
license = lib.licenses.unlicense;
};
}

View File

@ -1,36 +0,0 @@
{ lib, buildNimPackage, fetchFromGitea, fetchFromGitHub, preserves }:
let
hashlib = buildNimPackage rec {
pname = "hashlib";
version = "1.0.1";
src = fetchFromGitHub {
owner = "khchen";
repo = pname;
rev = "84e0247555e4488594975900401baaf5bbbfb531";
hash = "sha256-nWNThelCh0LPVU7ryZgS/23hRRvJDVL2xWbQibb+zN0=";
};
doCheck = true;
};
in buildNimPackage rec {
pname = "syndicate";
version = "20230530";
src = fetchFromGitea {
domain = "git.syndicate-lang.org";
owner = "ehmry";
repo = "${pname}-nim";
rev = version;
hash = "sha256-lUHoMSQwUlz9EDMvpFL9GlrwbwMvZDILSmuakONwe50=";
};
propagatedBuildInputs = [ hashlib preserves ];
doCheck = true;
meta = src.meta // {
maintainers = [ lib.maintainers.ehmry ];
license = lib.licenses.unlicense;
};
}

View File

@ -1,21 +1,21 @@
{ lib, buildNimPackage, fetchFromGitea, fetchFromGitHub, syndicate }: { lib, buildNimPackage, fetchFromGitea, illwill, syndicate }:
buildNimPackage rec { buildNimPackage (final: prev: {
pname = "syndicate_utils"; pname = "syndicate_utils";
version = "20230701"; version = "20230801";
src = fetchFromGitea { src = fetchFromGitea {
domain = "git.syndicate-lang.org"; domain = "git.syndicate-lang.org";
owner = "ehmry"; owner = "ehmry";
repo = pname; repo = final.pname;
rev = version; rev = final.version;
hash = "sha256-lkgYogxQOoVX8gywdty8sgYv9oHl8b8r+SIv/I6pCno="; hash = "sha256-O9n9y0v0cQg5b2P4GjOEKYj6t1fGTMy4v/QpeAScv2Q=";
}; };
propagatedBuildInputs = [ syndicate ]; propagatedBuildInputs = [ illwill syndicate ];
meta = src.meta // { meta = final.src.meta // {
maintainers = [ lib.maintainers.ehmry ]; maintainers = [ lib.maintainers.ehmry ];
license = lib.licenses.unlicense; license = lib.licenses.unlicense;
}; };
} })

View File

@ -1,8 +1,8 @@
{ lib, buildNimPackage, fetchFromGitea, makeDesktopItem, pkg-config, pcre, syndicate }: { lib, buildNimPackage, fetchFromGitea, makeDesktopItem, pkg-config, pcre, syndicate }:
buildNimPackage rec { buildNimPackage rec {
pname = "xdg_open_ng"; pname = "syndicated-open";
version = "20230518"; version = "20230630";
nimBinOnly = true; nimBinOnly = true;
src = fetchFromGitea { src = fetchFromGitea {
@ -10,7 +10,7 @@ buildNimPackage rec {
owner = "ehmry"; owner = "ehmry";
repo = pname; repo = pname;
rev = version; rev = version;
hash = "sha256-xoUcX3Vwz0Gnishqpe2hWo9x7HiNwagMBLW9nk9ZVWY="; hash = "sha256-BRSvsIkaingUhtaBKQYwFzr6uC4WFs2/BmfWWPfI/6s=";
}; };
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];
@ -18,8 +18,8 @@ buildNimPackage rec {
propagatedBuildInputs = [ pcre syndicate ]; propagatedBuildInputs = [ pcre syndicate ];
desktopItem = makeDesktopItem rec { desktopItem = makeDesktopItem rec {
name = "xdg-open"; name = "open";
desktopName = "Syndicate URI dispatcher (xdg-open)"; desktopName = "Syndicated URI open";
exec = "${name} %U"; exec = "${name} %U";
mimeTypes = [ mimeTypes = [
"application/vnd.mozilla.xul+xml" "application/vnd.mozilla.xul+xml"
@ -32,12 +32,12 @@ buildNimPackage rec {
}; };
postInstall = '' postInstall = ''
mv $out/bin/xdg_open $out/bin/xdg-open ln -s open $out/bin/xdg-open
cp -a $desktopItem/* $out/ cp -a $desktopItem/* $out/
''; '';
meta = src.meta // { meta = src.meta // {
description = "Replacement for xdg-open that uses Syndicate for messaging."; description = "Syndicated open command";
maintainers = [ lib.maintainers.ehmry ]; maintainers = [ lib.maintainers.ehmry ];
license = lib.licenses.unlicense; license = lib.licenses.unlicense;
}; };