Skip to content

Commit

Permalink
format codebase
Browse files Browse the repository at this point in the history
  • Loading branch information
aumetra committed May 26, 2024
1 parent e303c9a commit 190c5ba
Show file tree
Hide file tree
Showing 3 changed files with 182 additions and 183 deletions.
350 changes: 175 additions & 175 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -27,195 +27,195 @@
debugBuild.url = "github:boolean-option/false/d06b4794a134686c70a1325df88a6e6768c6b212";
};
outputs =
{
self,
devenv,
flake-utils,
nixpkgs,
rust-overlay,
crane,
...
{ self
, devenv
, flake-utils
, nixpkgs
, rust-overlay
, crane
, ...
}@inputs:
(
flake-utils.lib.eachDefaultSystem (
system:
let
features = "--all-features";
overlays = [ (import rust-overlay) ];
pkgs = import nixpkgs { inherit overlays system; };
stdenv = pkgs.stdenvAdapters.useMoldLinker pkgs.stdenv;
rustPlatform = pkgs.makeRustPlatform {
cargo = pkgs.rust-bin.stable.latest.minimal;
rustc = pkgs.rust-bin.stable.latest.minimal;
inherit stdenv;
};

craneLib = (crane.mkLib pkgs).overrideToolchain pkgs.rust-bin.stable.latest.minimal;
buildInputs = with pkgs; [
openssl
sqlite
zlib
];

nativeBuildInputs = with pkgs; [
protobuf
pkg-config
rustPlatform.bindgenHook
];

src = pkgs.lib.cleanSourceWith {
src = pkgs.lib.cleanSource ./.;
filter =
name: type:
let
baseName = baseNameOf (toString name);
in
!(baseName == "flake.lock" || pkgs.lib.hasSuffix ".nix" baseName);
};

commonArgs =
{
inherit
src
stdenv
buildInputs
nativeBuildInputs
;

strictDeps = true;

meta = {
description = "ActivityPub-federated microblogging";
homepage = "https://joinkitsune.org";
};
flake-utils.lib.eachDefaultSystem
(
system:
let
features = "--all-features";
overlays = [ (import rust-overlay) ];
pkgs = import nixpkgs { inherit overlays system; };
stdenv = pkgs.stdenvAdapters.useMoldLinker pkgs.stdenv;
rustPlatform = pkgs.makeRustPlatform {
cargo = pkgs.rust-bin.stable.latest.minimal;
rustc = pkgs.rust-bin.stable.latest.minimal;
inherit stdenv;
};

OPENSSL_NO_VENDOR = 1;
NIX_OUTPATH_USED_AS_RANDOM_SEED = "aaaaaaaaaa";
cargoExtraArgs = "--locked ${features}";
}
// (pkgs.lib.optionalAttrs inputs.debugBuild.value {
# do a debug build, as `dev` is the default debug profile
CARGO_PROFILE = "dev";
});

cargoToml = builtins.fromTOML (builtins.readFile ./Cargo.toml);
version = cargoToml.workspace.package.version;

cargoArtifacts = craneLib.buildDepsOnly (
commonArgs
// {
pname = "kitsune-workspace";
src = craneLib.cleanCargoSource src;
}
);
in
{
formatter = pkgs.nixpkgs-fmt;
packages = rec {
default = main;

cli = craneLib.buildPackage (
commonArgs
// {
pname = "kitsune-cli";
cargoExtraArgs = commonArgs.cargoExtraArgs + " --bin kitsune-cli";
inherit cargoArtifacts;
doCheck = false;
}
);
craneLib = (crane.mkLib pkgs).overrideToolchain pkgs.rust-bin.stable.latest.minimal;
buildInputs = with pkgs; [
openssl
sqlite
zlib
];

nativeBuildInputs = with pkgs; [
protobuf
pkg-config
rustPlatform.bindgenHook
];

src = pkgs.lib.cleanSourceWith {
src = pkgs.lib.cleanSource ./.;
filter =
name: type:
let
baseName = baseNameOf (toString name);
in
!(baseName == "flake.lock" || pkgs.lib.hasSuffix ".nix" baseName);
};

mrf-tool = craneLib.buildPackage (
commonArgs
// {
pname = "mrf-tool";
cargoExtraArgs = commonArgs.cargoExtraArgs + " --bin mrf-tool";
inherit cargoArtifacts;
doCheck = false;
commonArgs =
{
inherit
src
stdenv
buildInputs
nativeBuildInputs
;

strictDeps = true;

meta = {
description = "ActivityPub-federated microblogging";
homepage = "https://joinkitsune.org";
};

OPENSSL_NO_VENDOR = 1;
NIX_OUTPATH_USED_AS_RANDOM_SEED = "aaaaaaaaaa";
cargoExtraArgs = "--locked ${features}";
}
);
// (pkgs.lib.optionalAttrs inputs.debugBuild.value {
# do a debug build, as `dev` is the default debug profile
CARGO_PROFILE = "dev";
});

main = craneLib.buildPackage (
cargoToml = builtins.fromTOML (builtins.readFile ./Cargo.toml);
version = cargoToml.workspace.package.version;

cargoArtifacts = craneLib.buildDepsOnly (
commonArgs
// {
pname = "kitsune";
cargoExtraArgs = commonArgs.cargoExtraArgs + " --bin kitsune --bin kitsune-job-runner";
inherit cargoArtifacts;
doCheck = false;
pname = "kitsune-workspace";
src = craneLib.cleanCargoSource src;
}
);

frontend = pkgs.mkYarnPackage {
inherit version;
packageJSON = "${src}/kitsune-fe/package.json";
yarnLock = "${src}/kitsune-fe/yarn.lock";
src = "${src}/kitsune-fe";

buildPhase = ''
export HOME=$(mktemp -d)
yarn --offline build
'';

installPhase = ''
mkdir -p $out
cp -R deps/kitsune-fe/dist $out
'';

distPhase = "true";
in
{
formatter = pkgs.nixpkgs-fmt;
packages = rec {
default = main;

cli = craneLib.buildPackage (
commonArgs
// {
pname = "kitsune-cli";
cargoExtraArgs = commonArgs.cargoExtraArgs + " --bin kitsune-cli";
inherit cargoArtifacts;
doCheck = false;
}
);

mrf-tool = craneLib.buildPackage (
commonArgs
// {
pname = "mrf-tool";
cargoExtraArgs = commonArgs.cargoExtraArgs + " --bin mrf-tool";
inherit cargoArtifacts;
doCheck = false;
}
);

main = craneLib.buildPackage (
commonArgs
// {
pname = "kitsune";
cargoExtraArgs = commonArgs.cargoExtraArgs + " --bin kitsune --bin kitsune-job-runner";
inherit cargoArtifacts;
doCheck = false;
}
);

frontend = pkgs.mkYarnPackage {
inherit version;
packageJSON = "${src}/kitsune-fe/package.json";
yarnLock = "${src}/kitsune-fe/yarn.lock";
src = "${src}/kitsune-fe";

buildPhase = ''
export HOME=$(mktemp -d)
yarn --offline build
'';

installPhase = ''
mkdir -p $out
cp -R deps/kitsune-fe/dist $out
'';

distPhase = "true";
};
};
};

devShells = rec {
default = backend;

backend = devenv.lib.mkShell {
inherit pkgs inputs;

modules = [
(
{ pkgs, ... }:
{
packages =
with pkgs;
[
cargo-insta
diesel-cli
rust-bin.stable.latest.default
]
++ buildInputs
++ nativeBuildInputs;

enterShell = ''
export PG_HOST=127.0.0.1
export PG_PORT=5432
[ -z "$DATABASE_URL" ] && export DATABASE_URL=postgres://$USER@$PG_HOST:$PG_PORT/$USER
export REDIS_PORT=6379
[ -z "$REDIS_URL" ] && export REDIS_URL="redis://127.0.0.1:$REDIS_PORT"
'';

services = {
postgres = {
enable = true;
listen_addresses = "127.0.0.1";

devShells = rec {
default = backend;

backend = devenv.lib.mkShell {
inherit pkgs inputs;

modules = [
(
{ pkgs, ... }:
{
packages =
with pkgs;
[
cargo-insta
diesel-cli
rust-bin.stable.latest.default
]
++ buildInputs
++ nativeBuildInputs;

enterShell = ''
export PG_HOST=127.0.0.1
export PG_PORT=5432
[ -z "$DATABASE_URL" ] && export DATABASE_URL=postgres://$USER@$PG_HOST:$PG_PORT/$USER
export REDIS_PORT=6379
[ -z "$REDIS_URL" ] && export REDIS_URL="redis://127.0.0.1:$REDIS_PORT"
'';

services = {
postgres = {
enable = true;
listen_addresses = "127.0.0.1";
};
redis.enable = true;
};
redis.enable = true;
};
}
)
];
};
}
)
];
};

frontend = pkgs.mkShell {
buildInputs = with pkgs; [
nodejs
yarn
nodePackages.svelte-language-server
nodePackages.typescript-language-server
];
frontend = pkgs.mkShell {
buildInputs = with pkgs; [
nodejs
yarn
nodePackages.svelte-language-server
nodePackages.typescript-language-server
];
};
};
};
}
)
}
)
// {
overlays = rec {
default = kitsune;
Expand Down
Loading

0 comments on commit 190c5ba

Please sign in to comment.