Compare commits
7 Commits
5ce3ca2121
...
097e0c17f2
Author | SHA1 | Date |
---|---|---|
Emery Hemingway | 097e0c17f2 | |
Emery Hemingway | 4d2691722c | |
Emery Hemingway | e1601fa3da | |
Emery Hemingway | 1c74cf864d | |
Emery Hemingway | 2b60a063df | |
Emery Hemingway | 131ca1bec5 | |
Emery Hemingway | 09b06b4844 |
18
flake.lock
18
flake.lock
|
@ -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": {
|
||||||
|
|
31
flake.nix
31
flake.nix
|
@ -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 { };
|
||||||
|
|
|
@ -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
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 }
|
||||||
|
|
|
@ -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" $.>>
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -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
|
||||||
'';
|
}">
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -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;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -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;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -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;
|
||||||
};
|
};
|
||||||
}
|
})
|
||||||
|
|
|
@ -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;
|
||||||
};
|
};
|
Loading…
Reference in New Issue