58 lines
1.3 KiB
Nix
58 lines
1.3 KiB
Nix
{
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs?ref=refs/tags/22.11";
|
|
};
|
|
|
|
outputs = { self, nixpkgs }:
|
|
let
|
|
system = "x86_64-linux";
|
|
pkgs = (import nixpkgs {
|
|
inherit system;
|
|
config = {
|
|
packageOverrides = pkgs: rec {
|
|
ruby = pkgs.ruby_3_1;
|
|
bundler = pkgs.bundler.override {
|
|
inherit ruby;
|
|
};
|
|
bundix = pkgs.bundix.override {
|
|
inherit bundler;
|
|
};
|
|
};
|
|
};
|
|
});
|
|
in {
|
|
devShells.${system} = {
|
|
default = pkgs.mkShell {
|
|
buildInputs = with pkgs; [
|
|
ruby_3_1 postgresql git redis curl nginx openssl coreutils ffmpeg gcc exiftool glib pkg-config
|
|
];
|
|
shellHook = ''
|
|
PS1="(deps) $PS1"
|
|
'';
|
|
};
|
|
bundix = pkgs.mkShell {
|
|
buildInputs = [ pkgs.bundix ];
|
|
shellHook = ''
|
|
PS1="(bundix) $PS1"
|
|
'';
|
|
};
|
|
};
|
|
packages.${system}.default =
|
|
let
|
|
gems = pkgs.bundlerEnv {
|
|
name = "danbooru";
|
|
rubt = pkgs.ruby;
|
|
gemdir = ./.;
|
|
};
|
|
in pkgs.stdenv.mkDerivation {
|
|
name = "danbooru";
|
|
src = ./.;
|
|
buildInputs = [ gems pkgs.ruby ];
|
|
installPhase = ''
|
|
mkdir -p $out
|
|
cp -r $src $out
|
|
'';
|
|
};
|
|
};
|
|
}
|