mirror of
https://github.com/nix-community/nix-on-droid.git
synced 2025-11-08 19:46:07 +01:00
add flake.nix
Co-authored-by: Tobias Happ <Gerschtli@users.noreply.github.com>
This commit is contained in:
parent
abf7f56cb6
commit
9c7c0a9672
6 changed files with 61 additions and 5 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -1,3 +1,4 @@
|
||||||
result
|
result
|
||||||
result-*
|
result-*
|
||||||
out
|
out
|
||||||
|
flake.lock
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,10 @@ if the `system.stateVersion` option is set to `"20.09"` or later.
|
||||||
either or attempt an upgrade to `release-19.09`
|
either or attempt an upgrade to `release-19.09`
|
||||||
and follow the instructions, or backup and reinstall (preferred).
|
and follow the instructions, or backup and reinstall (preferred).
|
||||||
|
|
||||||
|
## Nix flakes support
|
||||||
|
|
||||||
|
* A `flake.nix` file was added.
|
||||||
|
|
||||||
## Known issues:
|
## Known issues:
|
||||||
|
|
||||||
* If `make` fails on your device with `Function not implemented`,
|
* If `make` fails on your device with `Function not implemented`,
|
||||||
|
|
|
||||||
16
README.md
16
README.md
|
|
@ -157,7 +157,23 @@ if you are planning to maintain a long-term fork that users can update from.
|
||||||
In case you only care about updates through wiping the data,
|
In case you only care about updates through wiping the data,
|
||||||
you shouldn't need a binary cache for that.
|
you shouldn't need a binary cache for that.
|
||||||
|
|
||||||
|
## Nix flakes
|
||||||
|
|
||||||
|
Example, to use with nix flakes:
|
||||||
|
|
||||||
|
```nix
|
||||||
|
{
|
||||||
|
description = "nix-on-droid configuration";
|
||||||
|
|
||||||
|
inputs.nix-on-droid.url = "/home/bbigras/src/nix-on-droid";
|
||||||
|
|
||||||
|
outputs = { nix-on-droid, ... }: {
|
||||||
|
nix-on-droid = (nix-on-droid.lib.aarch64-linux.nix-on-droid { config = ./your_config.nix; } ).activationPackage;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Build with `nix build .#nix-on-droid --impure`.
|
||||||
|
|
||||||
## Tips
|
## Tips
|
||||||
|
|
||||||
|
|
|
||||||
36
flake.nix
Normal file
36
flake.nix
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
{
|
||||||
|
description = "Nix-enabled environment for your Android device";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
flake-utils.url = "github:numtide/flake-utils";
|
||||||
|
home-manager = {
|
||||||
|
url = "github:nix-community/home-manager";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = { self, nixpkgs, home-manager, flake-utils }:
|
||||||
|
flake-utils.lib.eachSystem [
|
||||||
|
"aarch64-linux"
|
||||||
|
"i686-linux"
|
||||||
|
]
|
||||||
|
(system:
|
||||||
|
let pkgs = nixpkgs.legacyPackages.${system}; in
|
||||||
|
rec {
|
||||||
|
lib = {
|
||||||
|
nix-on-droid = { config }: import ./modules {
|
||||||
|
inherit pkgs config;
|
||||||
|
isFlake = true;
|
||||||
|
home-manager = (import home-manager { });
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
overlays = ./overlays;
|
||||||
|
|
||||||
|
apps.nix-on-droid = flake-utils.lib.mkApp {
|
||||||
|
drv = (pkgs.callPackage ./nix-on-droid { });
|
||||||
|
};
|
||||||
|
defaultApp = apps.nix-on-droid;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
# Copyright (c) 2019-2020, see AUTHORS. Licensed under MIT License, see LICENSE.
|
# Copyright (c) 2019-2020, see AUTHORS. Licensed under MIT License, see LICENSE.
|
||||||
|
|
||||||
{ pkgs ? import <nixpkgs> { }, home-manager ? import <home-manager> { }, config ? null }:
|
{ pkgs ? import <nixpkgs> { }, home-manager ? import <home-manager> { }, config ? null, isFlake ? false }:
|
||||||
|
|
||||||
with pkgs.lib;
|
with pkgs.lib;
|
||||||
|
|
||||||
|
|
@ -20,7 +20,7 @@ let
|
||||||
_module.args.pkgs = mkDefault pkgs;
|
_module.args.pkgs = mkDefault pkgs;
|
||||||
}
|
}
|
||||||
configModule
|
configModule
|
||||||
] ++ import ./module-list.nix { inherit pkgs; };
|
] ++ import ./module-list.nix { inherit pkgs isFlake; };
|
||||||
};
|
};
|
||||||
|
|
||||||
failedAssertions = map (x: x.message) (filter (x: !x.assertion) rawModule.config.assertions);
|
failedAssertions = map (x: x.message) (filter (x: !x.assertion) rawModule.config.assertions);
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
# Copyright (c) 2019-2020, see AUTHORS. Licensed under MIT License, see LICENSE.
|
# Copyright (c) 2019-2020, see AUTHORS. Licensed under MIT License, see LICENSE.
|
||||||
|
|
||||||
{ pkgs }:
|
{ pkgs, isFlake }:
|
||||||
|
|
||||||
[
|
[
|
||||||
./build/activation.nix
|
./build/activation.nix
|
||||||
|
|
@ -12,10 +12,9 @@
|
||||||
./environment/path.nix
|
./environment/path.nix
|
||||||
./environment/session-init.nix
|
./environment/session-init.nix
|
||||||
./home-manager.nix
|
./home-manager.nix
|
||||||
./nixpkgs.nix
|
|
||||||
./time.nix
|
./time.nix
|
||||||
./user.nix
|
./user.nix
|
||||||
./version.nix
|
./version.nix
|
||||||
./workaround-make.nix
|
./workaround-make.nix
|
||||||
(pkgs.path + "/nixos/modules/misc/assertions.nix")
|
(pkgs.path + "/nixos/modules/misc/assertions.nix")
|
||||||
]
|
] ++ pkgs.lib.optionals (!isFlake) [ ./nixpkgs.nix ]
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue