Apply latest nixfmt

This commit is contained in:
Emery Hemingway 2024-06-03 18:19:16 +03:00
parent c69eb46dc8
commit 749a73d921
23 changed files with 456 additions and 266 deletions

View File

@ -1,8 +1,8 @@
{ pkgs ? null }:
{
pkgs ? null,
}:
let
overlay = import ./overlay.nix;
pkgs' = if pkgs == null then
import <nixpkgs> { overlays = [ overlay ]; }
else
pkgs.extend overlay;
in builtins.intersectAttrs (overlay { } { }) pkgs'
pkgs' = if pkgs == null then import <nixpkgs> { overlays = [ overlay ]; } else pkgs.extend overlay;
in
builtins.intersectAttrs (overlay { } { }) pkgs'

122
flake.nix
View File

@ -1,62 +1,82 @@
{
description = "Syndicate utilities";
outputs = { self, nixpkgs }: {
lib = nixpkgs.lib.extend (import ./lib.nix);
outputs =
{ self, nixpkgs }:
{
lib = nixpkgs.lib.extend (import ./lib.nix);
overlays.default = import ./overlay.nix;
overlays.default = import ./overlay.nix;
legacyPackages =
self.lib.mapAttrs (system: pkgs: pkgs.extend self.overlays.default) {
legacyPackages = self.lib.mapAttrs (system: pkgs: pkgs.extend self.overlays.default) {
inherit (nixpkgs.legacyPackages) x86_64-linux;
};
packages = self.lib.mapAttrs (system: pkgs:
with pkgs; {
inherit fontconfig_actor libnotify_actor noise-c preserves-tools squeak
squeaker syndicate-server syndicated-open syndicate_utils;
preserves-py = python3Packages.preserves;
syndicate-py = python3Packages.syndicate-py;
}) self.legacyPackages;
packages = self.lib.mapAttrs (
system: pkgs: with pkgs; {
inherit
fontconfig_actor
libnotify_actor
noise-c
preserves-tools
squeak
squeaker
syndicate-server
syndicated-open
syndicate_utils
;
preserves-py = python3Packages.preserves;
syndicate-py = python3Packages.syndicate-py;
}
) self.legacyPackages;
nixosModules.default = self.nixosModules.syndicate-server;
nixosModules.syndicate-server =
# A little hack to apply our overlay to this module only.
{ config, lib, pkgs, ... }:
(import ./nixos/syndicate-server.nix) {
inherit config lib;
pkgs = pkgs.extend self.overlays.default;
};
devShells = self.lib.mapAttrs (system: pkgs:
with pkgs; {
default =
mkShell { packages = builtins.attrValues self.packages.${system}; };
}) self.legacyPackages;
checks = self.lib.mapAttrs (system: pkgs':
with import (nixpkgs + "/nixos/lib/testing-python.nix") {
inherit system;
pkgs = pkgs';
}; {
simple = simpleTest {
name = "http";
nodes.machine = { config, pkgs, ... }: {
imports = [ self.nixosModules.syndicate-server ];
nixpkgs.pkgs = pkgs';
services.syndicate.tty1 = {
enable = true;
user = "loser";
config = [ ];
};
users.users.loser.isNormalUser = true;
};
testScript = ''
machine.wait_for_job("syndicate-tty1")
'';
nixosModules.default = self.nixosModules.syndicate-server;
nixosModules.syndicate-server =
# A little hack to apply our overlay to this module only.
{
config,
lib,
pkgs,
...
}:
(import ./nixos/syndicate-server.nix) {
inherit config lib;
pkgs = pkgs.extend self.overlays.default;
};
}) { inherit (self.legacyPackages) x86_64-linux; };
};
devShells = self.lib.mapAttrs (
system: pkgs: with pkgs; {
default = mkShell { packages = builtins.attrValues self.packages.${system}; };
}
) self.legacyPackages;
checks = self.lib.mapAttrs (
system: pkgs':
with import (nixpkgs + "/nixos/lib/testing-python.nix") {
inherit system;
pkgs = pkgs';
}; {
simple = simpleTest {
name = "http";
nodes.machine =
{ config, pkgs, ... }:
{
imports = [ self.nixosModules.syndicate-server ];
nixpkgs.pkgs = pkgs';
services.syndicate.tty1 = {
enable = true;
user = "loser";
config = [ ];
};
users.users.loser.isNormalUser = true;
};
testScript = ''
machine.wait_for_job("syndicate-tty1")
'';
};
}
) { inherit (self.legacyPackages) x86_64-linux; };
};
}

17
lib.nix
View File

@ -1,11 +1,14 @@
final: prev:
let lib = final;
in with lib; {
let
lib = final;
in
with lib;
{
generators = with final.generators;
prev.generators // {
toPreserves = throw
"moved to https://git.syndicate-lang.org/ehmry/nix-processmgmt/src/branch/synit/nixproc/backends/synit";
generators =
with final.generators;
prev.generators
// {
toPreserves = throw "moved to https://git.syndicate-lang.org/ehmry/nix-processmgmt/src/branch/synit/nixproc/backends/synit";
};
}

View File

@ -1,4 +1,9 @@
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}:
{
options.services.syndicate = lib.mkOption {
@ -15,97 +20,110 @@
If the key is in the form of "tty''${N}" it will
be attached to the appropriate teletypewriter.
'';
type = lib.types.attrsOf (lib.types.submodule {
options = {
enable = lib.mkEnableOption "this Syndicate dataspace server instance";
type = lib.types.attrsOf (
lib.types.submodule {
options = {
enable = lib.mkEnableOption "this Syndicate dataspace server instance";
user = lib.mkOption {
type = lib.types.str;
example = "jane";
description = "User account under which the Syndicate server runs.";
user = lib.mkOption {
type = lib.types.str;
example = "jane";
description = "User account under which the Syndicate server runs.";
};
package = lib.mkOption {
default = pkgs.syndicate-server;
defaultText = "pkgs.syndicate-server";
type = lib.types.package;
description = "The package to use for the Syndicate dataspace server.";
};
config = lib.mkOption {
type = lib.types.listOf lib.types.path;
description = "Configurations to load.";
example = [ "/etc/syndicate" ];
};
};
package = lib.mkOption {
default = pkgs.syndicate-server;
defaultText = "pkgs.syndicate-server";
type = lib.types.package;
description =
"The package to use for the Syndicate dataspace server.";
};
config = lib.mkOption {
type = lib.types.listOf lib.types.path;
description = "Configurations to load.";
example = [ "/etc/syndicate" ];
};
};
});
}
);
};
config = {
systemd.services = let
configure = name: cfg:
let
configFile = lib.pipe cfg.config [
(lib.strings.concatMapStrings (dir: ''
<require-service <config-watcher "${dir}" $.>>
''))
(pkgs.writeText "syndicate-nixos-config.pr")
];
in [{
name = "syndicate-${name}";
value = let
serviceConfig = {
RuntimeDirectory = name;
ExecStart = "${cfg.package}/bin/syndicate-server --no-banner --config ${configFile}";
User = cfg.user;
};
in {
description = "Syndicate dataspace server";
restartIfChanged = false;
reloadIfChanged = false;
wantedBy = [ "multi-user.target" ];
} // (if builtins.match "tty[0-9]" name == null then {
inherit serviceConfig;
} else {
after = [
"systemd-user-sessions.service"
"systemd-logind.service"
"getty@${name}.service"
systemd.services =
let
configure =
name: cfg:
let
configFile = lib.pipe cfg.config [
(lib.strings.concatMapStrings (dir: ''
<require-service <config-watcher "${dir}" $.>>
''))
(pkgs.writeText "syndicate-nixos-config.pr")
];
wants = [ "dbus.socket" "systemd-logind.service" ];
conflicts = [ "getty@${name}.service" ];
unitConfig.ConditionPathExists = "/dev/${name}";
serviceConfig = serviceConfig // {
PAMName = "login";
StandardError = "journal";
StandardInput = "tty-fail";
StandardOutput = "journal";
TTYPath = "/dev/${name}";
TTYReset = "yes";
TTYVHangup = "yes";
TTYVTDisallocate = "yes";
UtmpIdentifier = "%n";
UtmpMode = "user";
WorkingDirectory = "~";
};
});
}];
serverCfgs =
lib.attrsets.filterAttrs (_: cfg: cfg.enable) config.services.syndicate;
in lib.pipe serverCfgs [
(lib.attrsets.mapAttrsToList configure)
lib.lists.flatten
builtins.listToAttrs
];
systemd.targets.multi-user.wants = lib.lists.flatten
(lib.attrsets.mapAttrsToList
(name: cfg: lib.optional cfg.enable "syndicate-${name}.service")
config.services.syndicate);
in
[
{
name = "syndicate-${name}";
value =
let
serviceConfig = {
RuntimeDirectory = name;
ExecStart = "${cfg.package}/bin/syndicate-server --no-banner --config ${configFile}";
User = cfg.user;
};
in
{
description = "Syndicate dataspace server";
restartIfChanged = false;
reloadIfChanged = false;
wantedBy = [ "multi-user.target" ];
}
// (
if builtins.match "tty[0-9]" name == null then
{ inherit serviceConfig; }
else
{
after = [
"systemd-user-sessions.service"
"systemd-logind.service"
"getty@${name}.service"
];
wants = [
"dbus.socket"
"systemd-logind.service"
];
conflicts = [ "getty@${name}.service" ];
unitConfig.ConditionPathExists = "/dev/${name}";
serviceConfig = serviceConfig // {
PAMName = "login";
StandardError = "journal";
StandardInput = "tty-fail";
StandardOutput = "journal";
TTYPath = "/dev/${name}";
TTYReset = "yes";
TTYVHangup = "yes";
TTYVTDisallocate = "yes";
UtmpIdentifier = "%n";
UtmpMode = "user";
WorkingDirectory = "~";
};
}
);
}
];
serverCfgs = lib.attrsets.filterAttrs (_: cfg: cfg.enable) config.services.syndicate;
in
lib.pipe serverCfgs [
(lib.attrsets.mapAttrsToList configure)
lib.lists.flatten
builtins.listToAttrs
];
systemd.targets.multi-user.wants = lib.lists.flatten (
lib.attrsets.mapAttrsToList (
name: cfg: lib.optional cfg.enable "syndicate-${name}.service"
) config.services.syndicate
);
};
}

View File

@ -1,52 +1,55 @@
final: prev:
let
rustPkgs = let
overlay = import (prev.fetchFromGitHub {
owner = "oxalica";
repo = "rust-overlay";
rev = "a2ccfb2134622b28668a274e403ba6f075ae1223";
hash = "sha256-9honwiIeMbBKi7FzfEy89f1ShUiXz/gVxZSS048pKyc=";
});
in final.extend overlay;
rustPkgs =
let
overlay = import (
prev.fetchFromGitHub {
owner = "oxalica";
repo = "rust-overlay";
rev = "a2ccfb2134622b28668a274e403ba6f075ae1223";
hash = "sha256-9honwiIeMbBKi7FzfEy89f1ShUiXz/gVxZSS048pKyc=";
}
);
in
final.extend overlay;
rust' = rustPkgs.rust-bin.nightly.latest.default;
in {
in
{
lib = prev.lib.extend (import ./lib.nix);
acpi_actor = final.callPackage ./packages/acpi_actor { };
fontconfig_actor =
final.callPackage ./packages/fontconfig_actor { };
fontconfig_actor = final.callPackage ./packages/fontconfig_actor { };
libnotify_actor =
final.callPackage ./packages/libnotify_actor { };
libnotify_actor = final.callPackage ./packages/libnotify_actor { };
nix_actor = final.callPackage ./packages/nix_actor { };
nix_actor = final.callPackage ./packages/nix_actor { };
noiseprotocol = final.callPackage ./packages/nim/noiseprotocol { };
noiseprotocol = final.callPackage ./packages/nim/noiseprotocol { };
syndicate_utils = final.callPackage ./packages/syndicate_utils-nim { };
syndicate_utils = final.callPackage ./packages/syndicate_utils-nim { };
syndicated-open = final.callPackage ./packages/syndicated-open { };
syndicated-open = final.callPackage ./packages/syndicated-open { };
noise-c = final.callPackage ./packages/noise-c { };
preserves-tools = final.callPackage ./packages/preserves-tools { };
python3Packages = prev.python3Packages.overrideScope (final': prev': {
preserves = final'.callPackage ./packages/preserves-py { };
syndicate-py = final'.callPackage ./packages/syndicate-py { };
synit-daemons = final'.callPackage ./packages/synit-daemons-py { };
});
python3Packages = prev.python3Packages.overrideScope (
final': prev': {
preserves = final'.callPackage ./packages/preserves-py { };
syndicate-py = final'.callPackage ./packages/syndicate-py { };
synit-daemons = final'.callPackage ./packages/synit-daemons-py { };
}
);
sqlite_actor = final.callPackage ./packages/sqlite_actor { };
squeak = final.callPackage ./packages/squeak { };
squeaker = final.python3Packages.callPackage ./packages/squeaker { };
syndicate-server =
final.callPackage ./packages/syndicate-server { rust = rust'; };
syndicate-server = final.callPackage ./packages/syndicate-server { rust = rust'; };
synit-pid1 = final.callPackage ./packages/synit-pid1 { };

View File

@ -1,6 +1,10 @@
{ lib, buildNimPackage, fetchFromGitea }:
{
lib,
buildNimPackage,
fetchFromGitea,
}:
buildNimPackage rec {
buildNimPackage (finalAttrs: {
pname = "acpi_actor";
version = "20231010";
@ -8,7 +12,7 @@ buildNimPackage rec {
domain = "git.syndicate-lang.org";
owner = "ehmry";
repo = pname;
rev = version;
rev = finalAttrs.version;
hash = "sha256-eN3VC2yL6UvjeIGvzx0PAujR/Xd6Rc1e9Ftf6fKKk2E=";
};

View File

@ -1,4 +1,10 @@
{ lib, buildNimPackage, fetchFromGitea, fontconfig, pkg-config }:
{
lib,
buildNimPackage,
fetchFromGitea,
fontconfig,
pkg-config,
}:
buildNimPackage rec {
pname = "fontconfig_actor";

View File

@ -1,4 +1,10 @@
{ lib, buildNimPackage, fetchFromGitea, libnotify, pkg-config }:
{
lib,
buildNimPackage,
fetchFromGitea,
libnotify,
pkg-config,
}:
buildNimPackage rec {
pname = "libnotify_actor";

View File

@ -1,4 +1,8 @@
{ lib, buildNimPackage, noise-c }:
{
lib,
buildNimPackage,
noise-c,
}:
buildNimPackage rec {
pname = "noise";

View File

@ -1,16 +1,26 @@
{ lib, buildNimPackage, fetchFromGitea, fetchFromGitHub, boost, nix, pkg-config
{
lib,
buildNimPackage,
fetchFromGitea,
fetchFromGitHub,
boost,
nix,
pkg-config,
}:
let
nix' = nix.overrideAttrs (final: prev: {
src = fetchFromGitHub {
owner = "NixOS";
repo = "nix";
rev = "2.13.3";
hash = "sha256-jUc2ccTR8f6MGY2pUKgujm+lxSPNGm/ZAP+toX+nMNc=";
};
});
in buildNimPackage rec {
nix' = nix.overrideAttrs (
final: prev: {
src = fetchFromGitHub {
owner = "NixOS";
repo = "nix";
rev = "2.13.3";
hash = "sha256-jUc2ccTR8f6MGY2pUKgujm+lxSPNGm/ZAP+toX+nMNc=";
};
}
);
in
buildNimPackage rec {
pname = "nix_actor";
version = "20231009";
@ -25,7 +35,10 @@ in buildNimPackage rec {
lockFile = "${src}/lock.json";
propagatedNativeBuildInputs = [ pkg-config ];
propagatedBuildInputs = [ boost nix' ];
propagatedBuildInputs = [
boost
nix'
];
meta = src.meta // {
maintainers = [ lib.maintainers.ehmry ];

View File

@ -1,9 +1,17 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook }:
{
lib,
stdenv,
fetchFromGitHub,
autoreconfHook,
}:
stdenv.mkDerivation rec {
pname = "noise-c";
version = "20230309";
outputs = [ "bin" "out" ];
outputs = [
"bin"
"out"
];
src = fetchFromGitHub {
owner = "rweather";
repo = pname;

View File

@ -1,4 +1,10 @@
{ lib, buildPythonPackage, fetchPypi, python, setuptools-scm }:
{
lib,
buildPythonPackage,
fetchPypi,
python,
setuptools-scm,
}:
buildPythonPackage rec {
pname = "preserves";

View File

@ -1,4 +1,9 @@
{ lib, rustPlatform, rustc, fetchCrate }:
{
lib,
rustPlatform,
rustc,
fetchCrate,
}:
rustPlatform.buildRustPackage rec {
pname = "preserves-tool";

View File

@ -1,4 +1,10 @@
{ lib, buildNimPackage, fetchFromGitea, pkg-config, sqlcipher }:
{
lib,
buildNimPackage,
fetchFromGitea,
pkg-config,
sqlcipher,
}:
buildNimPackage rec {
pname = "sqlite_actor";

View File

@ -1,11 +1,27 @@
{ lib, stdenv, fetchurl, autoPatchelfHook, makeWrapper, unzip, alsa-lib, libGL
, libpulseaudio, libuuid, nas, openssl, pango, sndio, xorg }:
{
lib,
stdenv,
fetchurl,
autoPatchelfHook,
makeWrapper,
unzip,
alsa-lib,
libGL,
libpulseaudio,
libuuid,
nas,
openssl,
pango,
sndio,
xorg,
}:
let
versionA = "6.0";
versionB = "22104";
versionC = "202206021410";
bits = with stdenv.hostPlatform;
bits =
with stdenv.hostPlatform;
if is32bit then
"32"
else if is64bit then
@ -14,23 +30,26 @@ let
throw "too many addressing bits";
sources = {
i686-linux = fetchurl {
url =
"http://files.squeak.org/${versionA}/Squeak${versionA}-${versionB}-${bits}bit/Squeak${versionA}-${versionB}-${bits}bit-${versionC}-Linux-x86.tar.gz";
url = "http://files.squeak.org/${versionA}/Squeak${versionA}-${versionB}-${bits}bit/Squeak${versionA}-${versionB}-${bits}bit-${versionC}-Linux-x86.tar.gz";
sha256 = "sha256-6o9GCeNsHV+OhHBUCqBmslgUEBrS3XPwsl/p8zgfJQs=";
};
x86_64-linux = fetchurl {
url =
"http://files.squeak.org/${versionA}/Squeak${versionA}-${versionB}-${bits}bit/Squeak${versionA}-${versionB}-${bits}bit-${versionC}-Linux-x64.tar.gz";
url = "http://files.squeak.org/${versionA}/Squeak${versionA}-${versionB}-${bits}bit/Squeak${versionA}-${versionB}-${bits}bit-${versionC}-Linux-x64.tar.gz";
sha256 = "sha256-pgTdFyqAQo3K6Th2FXL8Op1hakjcL4rJ6wnKuIlFZ9g=";
};
};
in stdenv.mkDerivation rec {
in
stdenv.mkDerivation rec {
pname = "squeak";
version = "${versionA}-${versionB}-${versionC}";
src = sources.${stdenv.system};
nativeBuildInputs = [ autoPatchelfHook makeWrapper unzip ];
nativeBuildInputs = [
autoPatchelfHook
makeWrapper
unzip
];
buildInputs = with xorg; [
alsa-lib
@ -54,9 +73,7 @@ in stdenv.mkDerivation rec {
cp -a bin $out/lib
cp -a shared/* $out/lib
makeWrapper $out/lib/squeak $out/bin/squeak \
--prefix LD_LIBRARY_PATH ":" "$out/lib:${
lib.makeLibraryPath [ openssl ]
}" \
--prefix LD_LIBRARY_PATH ":" "$out/lib:${lib.makeLibraryPath [ openssl ]}" \
--set SQUEAK_IMAGE $out/lib/Squeak${versionA}-${versionB}-${bits}bit.image
'';
@ -67,7 +84,10 @@ in stdenv.mkDerivation rec {
meta = {
description = "Squeak virtual machine and image";
homepage = "https://squeak.org/";
license = with lib.licenses; [ asl20 mit ];
license = with lib.licenses; [
asl20
mit
];
maintainers = with lib.maintainers; [ ehmry ];
platforms = builtins.attrNames sources;
};

View File

@ -1,4 +1,8 @@
{ lib, buildPythonApplication, fetchFromGitHub }:
{
lib,
buildPythonApplication,
fetchFromGitHub,
}:
buildPythonApplication rec {
pname = "squeaker";

View File

@ -1,4 +1,10 @@
{ lib, buildPythonPackage, fetchPypi, setuptools-scm, preserves, websockets
{
lib,
buildPythonPackage,
fetchPypi,
setuptools-scm,
preserves,
websockets,
}:
buildPythonPackage rec {
@ -11,7 +17,10 @@ buildPythonPackage rec {
};
buildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ preserves websockets ];
propagatedBuildInputs = [
preserves
websockets
];
meta = src.meta // {
description = "Syndicated Actor model for Python";

View File

@ -1,6 +1,13 @@
# https://git.syndicate-lang.org/synit/synit/src/branch/main/packaging/packages/syndicate-server/APKBUILD
{ lib, rustPlatform, rust, fetchFromGitea, pkg-config, openssl }:
{
lib,
rustPlatform,
rust,
fetchFromGitea,
pkg-config,
openssl,
}:
rustPlatform.buildRustPackage rec {
pname = "syndicate-server";
@ -13,7 +20,10 @@ rustPlatform.buildRustPackage rec {
sha256 = "sha256-jyZlio+wo9YiaiIKCl6YC9Bym89fqUkJOqhBb0Nu/zQ=";
};
cargoHash = "sha256-WMX1GPU9GyXNP5qng6PGX++5PLvdViECTr8KPNkF4ps=";
nativeBuildInputs = [ rust pkg-config ];
nativeBuildInputs = [
rust
pkg-config
];
buildInputs = [ openssl ];
meta = {

View File

@ -1,6 +1,14 @@
{ lib, buildNimPackage, fetchFromGitea, pkg-config
{
lib,
buildNimPackage,
fetchFromGitea,
pkg-config,
, postgresql, sqlite, libxml2, libxslt }:
postgresql,
sqlite,
libxml2,
libxslt,
}:
let
version = "20240407";
@ -11,13 +19,24 @@ let
rev = version;
hash = "sha256-MFoN/2+fOsnJ9fX+5Adj7BDhBcbvh/bIOMnj9vIoq9A=";
};
in buildNimPackage (finalAttrs:
{ buildInputs ? [ ], ... }: {
in
buildNimPackage (
finalAttrs:
{
buildInputs ? [ ],
...
}:
{
pname = "syndicate_utils";
inherit version src;
nativeBuildInputs = [ pkg-config ];
buildInputs = buildInputs ++ [ postgresql sqlite libxml2 libxslt ];
buildInputs = buildInputs ++ [
postgresql
sqlite
libxml2
libxslt
];
lockFile = "${src}/lock.json";
@ -27,4 +46,5 @@ in buildNimPackage (finalAttrs:
maintainers = [ lib.maintainers.ehmry ];
license = lib.licenses.unlicense;
};
})
}
)

View File

@ -1,4 +1,11 @@
{ lib, buildNimPackage, fetchFromGitea, makeDesktopItem, pkg-config, pcre }:
{
lib,
buildNimPackage,
fetchFromGitea,
makeDesktopItem,
pkg-config,
pcre,
}:
buildNimPackage rec {
pname = "syndicated-open";

View File

@ -1,51 +1,54 @@
{ lib, python3Packages, fetchFromGitea }:
{
lib,
python3Packages,
fetchFromGitea,
}:
python3Packages.buildPythonApplication rec {
pname = "synit-python-daemons";
version = "2023-11-01";
format = "other";
pname = "synit-python-daemons";
version = "2023-11-01";
format = "other";
src = fetchFromGitea {
domain = "git.syndicate-lang.org";
owner = "synit";
repo = "synit";
rev = "a2ecd8a4e441f8622a57a99987cb0aa5be9e1dcd";
hash = "sha256-M79AJ8/Synzm4CYkt3+GYViJLJcuYBW+x32Vfy+oFUM=";
};
src = fetchFromGitea {
domain = "git.syndicate-lang.org";
owner = "synit";
repo = "synit";
rev = "a2ecd8a4e441f8622a57a99987cb0aa5be9e1dcd";
hash = "sha256-M79AJ8/Synzm4CYkt3+GYViJLJcuYBW+x32Vfy+oFUM=";
};
sourceRoot =
"${src.name}/packaging/packages/synit-config/files/usr/lib/synit/python/synit/daemon";
sourceRoot = "${src.name}/packaging/packages/synit-config/files/usr/lib/synit/python/synit/daemon";
propagatedBuildInputs = with python3Packages; [
pyroute2
syndicate-py
];
propagatedBuildInputs = with python3Packages; [
pyroute2
syndicate-py
];
postPatch = ''
for f in *.py; do
substituteInPlace $f --replace \
"/home/tonyg/src/synit/protocols" \
"$out/share/syndicate-protocols"
done
'';
postPatch = ''
for f in *.py; do
substituteInPlace $f --replace \
"/home/tonyg/src/synit/protocols" \
"$out/share/syndicate-protocols"
done
'';
buildPhase = ''
runHook preBuild
for f in *.py; do
sed -i '1i #!/bin/python' $f
done
runHook postBuild
'';
buildPhase = ''
runHook preBuild
for f in *.py; do
sed -i '1i #!/bin/python' $f
done
runHook postBuild
'';
installPhase = ''
runHook preInstall
for f in *.py; do
bin_name=$f
bin_name=''${bin_name/.py}
bin_name=''${bin_name//_/-}
install --mode 0555 -D $f $out/bin/$bin_name
done
install -D -t $out/share/syndicate-protocols $src/protocols/schema-bundle.bin
runHook postInstall
'';
installPhase = ''
runHook preInstall
for f in *.py; do
bin_name=$f
bin_name=''${bin_name/.py}
bin_name=''${bin_name//_/-}
install --mode 0555 -D $f $out/bin/$bin_name
done
install -D -t $out/share/syndicate-protocols $src/protocols/schema-bundle.bin
runHook postInstall
'';
}

View File

@ -1,6 +1,11 @@
# https://git.syndicate-lang.org/synit/synit/src/branch/main/packaging/packages/synit-pid1/APKBUILD
{ lib, rustPlatform, rustc, fetchFromGitea }:
{
lib,
rustPlatform,
rustc,
fetchFromGitea,
}:
rustPlatform.buildRustPackage rec {
pname = "synit-pid1";

View File

@ -1,4 +1,11 @@
{ lib, buildNimPackage, fetchFromGitea, pkg-config, syndicate, xapian }:
{
lib,
buildNimPackage,
fetchFromGitea,
pkg-config,
syndicate,
xapian,
}:
buildNimPackage rec {
pname = "xapian_actor";
@ -13,7 +20,10 @@ buildNimPackage rec {
};
propagatedNativeBuildInputs = [ pkg-config ];
propagatedBuildInputs = [ syndicate xapian ];
propagatedBuildInputs = [
syndicate
xapian
];
meta = src.meta // {
maintainers = [ lib.maintainers.ehmry ];