pkgs: migrate to nilla
This commit is contained in:
parent
9a382947e3
commit
b79769a5ea
5 changed files with 93 additions and 89 deletions
65
flake.nix
65
flake.nix
|
@ -35,57 +35,36 @@
|
|||
./hosts
|
||||
./modules
|
||||
./wrappers
|
||||
./pkgs
|
||||
./services
|
||||
];
|
||||
|
||||
flake.devShells = transpose (builtins.mapAttrs (_: shell: shell.result) nilla.shells);
|
||||
flake.packages = transpose (builtins.mapAttrs (_: pkg: pkg.result) nilla.packages);
|
||||
|
||||
perSystem =
|
||||
{
|
||||
inputs',
|
||||
self',
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{
|
||||
packages = {
|
||||
# Re-export it for convenience and for caching
|
||||
inherit (inputs'.attic.packages) attic-client attic-server;
|
||||
base-packages = pkgs.symlinkJoin {
|
||||
name = "settei-base";
|
||||
paths = with self'.packages; [
|
||||
helix
|
||||
fish
|
||||
git-commit-last
|
||||
git-fixup
|
||||
];
|
||||
};
|
||||
};
|
||||
perSystem = {
|
||||
treefmt = {
|
||||
programs.deadnix.enable = true;
|
||||
programs.nixfmt.enable = true;
|
||||
programs.statix.enable = true;
|
||||
programs.fish_indent.enable = true;
|
||||
programs.deno.enable = true;
|
||||
programs.stylua.enable = true;
|
||||
programs.shfmt.enable = true;
|
||||
settings.global.excludes = [
|
||||
# agenix
|
||||
"*.age"
|
||||
|
||||
treefmt = {
|
||||
programs.deadnix.enable = true;
|
||||
programs.nixfmt.enable = true;
|
||||
programs.statix.enable = true;
|
||||
programs.fish_indent.enable = true;
|
||||
programs.deno.enable = true;
|
||||
programs.stylua.enable = true;
|
||||
programs.shfmt.enable = true;
|
||||
settings.global.excludes = [
|
||||
# agenix
|
||||
"*.age"
|
||||
# racket
|
||||
"*.rkt"
|
||||
"**/rashrc"
|
||||
|
||||
# racket
|
||||
"*.rkt"
|
||||
"**/rashrc"
|
||||
|
||||
# custom assets
|
||||
"*.png"
|
||||
"*.svg"
|
||||
];
|
||||
settings.on-unmatched = "fatal";
|
||||
};
|
||||
# custom assets
|
||||
"*.png"
|
||||
"*.svg"
|
||||
];
|
||||
settings.on-unmatched = "fatal";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
inputs = {
|
||||
|
|
|
@ -15,12 +15,7 @@
|
|||
pkg:
|
||||
lib.attrs.generate pkg.systems (
|
||||
system:
|
||||
config.inputs.nixpkgs.result.legacyPackages.${system}.callPackage pkg.package (
|
||||
{
|
||||
self' = builtins.mapAttrs (_: pkg: pkg.result.${system}) config.packages;
|
||||
}
|
||||
// pkg.settings.args
|
||||
)
|
||||
config.inputs.nixpkgs.result.legacyPackages.${system}.callPackage pkg.package pkg.settings.args
|
||||
);
|
||||
};
|
||||
}
|
||||
|
|
23
nilla.nix
23
nilla.nix
|
@ -4,7 +4,10 @@
|
|||
(import inputs.nilla).create (
|
||||
{ config, lib }:
|
||||
{
|
||||
includes = [ ./modules/nilla ];
|
||||
includes = [
|
||||
./modules/nilla
|
||||
./pkgs
|
||||
];
|
||||
|
||||
config.inputs = builtins.mapAttrs (_: src: {
|
||||
inherit src;
|
||||
|
@ -32,8 +35,10 @@
|
|||
builder = "custom-load";
|
||||
package = { system }: inputs.${input}.packages.${system}.${output};
|
||||
};
|
||||
getPkgs = system: builtins.mapAttrs (_: pkg: pkg.result.${system}) config.packages;
|
||||
in
|
||||
{
|
||||
# Re-export for convenience and for caching
|
||||
attic-client = mkPackageFlakeOutput {
|
||||
input = "attic";
|
||||
output = "attic-client";
|
||||
|
@ -44,10 +49,16 @@
|
|||
};
|
||||
agenix = mkPackageFlakeOutput { input = "agenix"; };
|
||||
base-packages = mkPackage (
|
||||
{ symlinkJoin }:
|
||||
{ symlinkJoin, system }:
|
||||
symlinkJoin {
|
||||
name = "settei-base";
|
||||
paths = [ ];
|
||||
paths = with (getPkgs system); [
|
||||
# TODO: wrappers
|
||||
# helix
|
||||
# fish
|
||||
git-commit-last
|
||||
git-fixup
|
||||
];
|
||||
}
|
||||
);
|
||||
};
|
||||
|
@ -62,13 +73,13 @@
|
|||
shell =
|
||||
{
|
||||
mkShellNoCC,
|
||||
system,
|
||||
nh,
|
||||
self',
|
||||
}:
|
||||
mkShellNoCC {
|
||||
packages = [
|
||||
self'.agenix
|
||||
self'.attic-client
|
||||
config.packages.agenix.result.${system}
|
||||
config.packages.attic-client.result.${system}
|
||||
nh
|
||||
];
|
||||
};
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
{
|
||||
lib,
|
||||
stdenv,
|
||||
pkgs,
|
||||
system,
|
||||
fenix,
|
||||
crane,
|
||||
src,
|
||||
|
@ -11,12 +13,12 @@
|
|||
}:
|
||||
let
|
||||
rust =
|
||||
with fenix;
|
||||
with fenix.${system};
|
||||
combine [
|
||||
stable.cargo
|
||||
stable.rustc
|
||||
];
|
||||
crane' = crane.overrideToolchain rust;
|
||||
crane' = (crane pkgs).overrideToolchain rust;
|
||||
rocksdb' = rocksdb.overrideAttrs (
|
||||
final: prev: {
|
||||
version = "9.1.1";
|
||||
|
|
|
@ -1,35 +1,52 @@
|
|||
{ inputs, ... }:
|
||||
let
|
||||
systems = [
|
||||
"x86_64-linux"
|
||||
"aarch64-linux"
|
||||
"aarch64-darwin"
|
||||
];
|
||||
builder = "nixpkgs-flake";
|
||||
mkPackage = package: {
|
||||
inherit systems package builder;
|
||||
};
|
||||
|
||||
in
|
||||
{ config }:
|
||||
{
|
||||
perSystem =
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
inputs',
|
||||
...
|
||||
}:
|
||||
{
|
||||
packages.conduit-next = pkgs.callPackage ./conduit {
|
||||
src = inputs.conduit-src;
|
||||
crane = inputs.crane.mkLib pkgs;
|
||||
fenix = inputs'.fenix.packages;
|
||||
};
|
||||
|
||||
packages.git-commit-last = pkgs.writeShellApplication {
|
||||
name = "git-commit-last";
|
||||
text = ''
|
||||
GITDIR="$(git rev-parse --git-dir)"
|
||||
git commit -eF "$GITDIR/COMMIT_EDITMSG"
|
||||
'';
|
||||
};
|
||||
|
||||
packages.git-fixup = pkgs.writeShellApplication {
|
||||
name = "git-fixup";
|
||||
text = ''
|
||||
git log -n 50 --pretty=format:'%h %s' --no-merges | \
|
||||
${lib.getExe pkgs.fzf} | \
|
||||
cut -c -7 | \
|
||||
xargs -o git commit --fixup
|
||||
'';
|
||||
};
|
||||
config.packages.conduit-next = {
|
||||
inherit systems builder;
|
||||
package = import ./conduit;
|
||||
settings.args = {
|
||||
src = config.inputs.conduit-src.result;
|
||||
crane = config.inputs.crane.result.mkLib;
|
||||
fenix = config.inputs.fenix.result.packages;
|
||||
};
|
||||
};
|
||||
|
||||
config.packages.git-commit-last = mkPackage (
|
||||
{ writeShellApplication }:
|
||||
writeShellApplication {
|
||||
name = "git-commit-last";
|
||||
text = ''
|
||||
GITDIR="$(git rev-parse --git-dir)"
|
||||
git commit -eF "$GITDIR/COMMIT_EDITMSG"
|
||||
'';
|
||||
}
|
||||
);
|
||||
|
||||
config.packages.git-fixup = mkPackage (
|
||||
{
|
||||
lib,
|
||||
writeShellApplication,
|
||||
fzf,
|
||||
}:
|
||||
writeShellApplication {
|
||||
name = "git-fixup";
|
||||
text = ''
|
||||
git log -n 50 --pretty=format:'%h %s' --no-merges | \
|
||||
${lib.getExe fzf} | \
|
||||
cut -c -7 | \
|
||||
xargs -o git commit --fixup
|
||||
'';
|
||||
}
|
||||
);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue