44 lines
1.1 KiB
Nix
44 lines
1.1 KiB
Nix
|
{
|
||
|
description = "Dev environment for the Recount Mobile app - written in Kotlin";
|
||
|
|
||
|
inputs = {
|
||
|
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
||
|
};
|
||
|
|
||
|
outputs = { self, nixpkgs}:
|
||
|
let
|
||
|
|
||
|
# Generate a user-friendly version number.
|
||
|
version = builtins.substring 0 8 self.lastModifiedDate;
|
||
|
|
||
|
# System types to support.
|
||
|
supportedSystems = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" ];
|
||
|
|
||
|
# Helper function to generate an attrset '{ x86_64-linux = f "x86_64-linux"; ... }'.
|
||
|
forAllSystems = nixpkgs.lib.genAttrs supportedSystems;
|
||
|
|
||
|
# Nixpkgs instantiated for supported system types.
|
||
|
nixpkgsFor = forAllSystems (system:
|
||
|
import nixpkgs {
|
||
|
inherit system;
|
||
|
config.allowUnfree = true;
|
||
|
}
|
||
|
);
|
||
|
|
||
|
in {
|
||
|
|
||
|
devShells = forAllSystems (system:
|
||
|
let pkgs = nixpkgsFor.${system};
|
||
|
in{
|
||
|
default = pkgs.mkShell {
|
||
|
buildInputs = with pkgs; [
|
||
|
android-udev-rules
|
||
|
android-studio
|
||
|
android-tools
|
||
|
];
|
||
|
};
|
||
|
});
|
||
|
|
||
|
};
|
||
|
}
|