forked from frero/uash
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
00450ddffd
|
@@ -1,6 +0,0 @@
|
|||||||
# Uiua
|
|
||||||
*.uasm
|
|
||||||
|
|
||||||
# Nix
|
|
||||||
result
|
|
||||||
result-*
|
|
||||||
@@ -5,38 +5,13 @@
|
|||||||
|
|
||||||
outputs = { self, nixpkgs }:
|
outputs = { self, nixpkgs }:
|
||||||
let
|
let
|
||||||
inherit (nixpkgs) lib;
|
system = "x86_64-linux";
|
||||||
|
pkgs = import nixpkgs { inherit system; };
|
||||||
systems = [
|
|
||||||
"x86_64-linux"
|
|
||||||
"aarch64-linux"
|
|
||||||
"x86_64-darwin"
|
|
||||||
"aarch64-darwin"
|
|
||||||
];
|
|
||||||
|
|
||||||
forAllSystems = f: lib.genAttrs systems (system: let
|
|
||||||
pkgs = nixpkgs.legacyPackages.${system};
|
|
||||||
in f system pkgs);
|
|
||||||
in {
|
in {
|
||||||
apps = forAllSystems (system: pkgs: {
|
devShells.x86_64-linux.default = pkgs.mkShell {
|
||||||
default = {
|
buildInputs = with pkgs; [
|
||||||
type = "app";
|
uiua-unstable
|
||||||
program = "${lib.getExe self.packages.${system}.default}";
|
];
|
||||||
meta.description = "Run uash as a normal executable";
|
};
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
devShells = forAllSystems (system: pkgs: {
|
|
||||||
default = pkgs.mkShell {
|
|
||||||
buildInputs = with pkgs; [
|
|
||||||
uiua-unstable
|
|
||||||
];
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
packages = forAllSystems (system: pkgs: {
|
|
||||||
default = self.packages.${system}.uash;
|
|
||||||
uash = pkgs.callPackage ./nix/package.nix { };
|
|
||||||
});
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,44 +0,0 @@
|
|||||||
{
|
|
||||||
lib
|
|
||||||
, uiua
|
|
||||||
, stdenvNoCC
|
|
||||||
, runtimeShell
|
|
||||||
}:
|
|
||||||
|
|
||||||
stdenvNoCC.mkDerivation {
|
|
||||||
pname = "uash";
|
|
||||||
version = "unstable";
|
|
||||||
|
|
||||||
src = lib.fileset.toSource {
|
|
||||||
root = ./..;
|
|
||||||
fileset = lib.fileset.unions [
|
|
||||||
../uash.ua
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
nativeBuildInputs = [ uiua ];
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
runHook preBuild
|
|
||||||
uiua build --output .uash.uasm uash.ua
|
|
||||||
runHook postBuild
|
|
||||||
'';
|
|
||||||
|
|
||||||
wrapper = ''
|
|
||||||
#!${runtimeShell}
|
|
||||||
"${uiua}"/bin/uiua run ${placeholder "out"}/bin/.uash.uasm
|
|
||||||
'';
|
|
||||||
|
|
||||||
passAsFile = [ "wrapper" ];
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
runHook preInstall
|
|
||||||
install -Dm444 .uash.uasm -t "$out"/bin
|
|
||||||
install -Dm555 "$wrapperPath" "$out"/bin/uash
|
|
||||||
runHook postInstall
|
|
||||||
'';
|
|
||||||
|
|
||||||
shellPath = "/bin/uash";
|
|
||||||
|
|
||||||
meta.mainProgram = "uash";
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user