mirror of
https://github.com/nix-community/nix-on-droid.git
synced 2025-11-09 03:56:06 +01:00
Provide a functional workaround for crashing bash on inital build
This commit is contained in:
parent
5a915530b0
commit
867aa587ea
1 changed files with 34 additions and 12 deletions
|
|
@ -1,23 +1,45 @@
|
||||||
# Licensed under GNU Lesser General Public License v3 or later, see COPYING.
|
# Licensed under GNU Lesser General Public License v3 or later, see COPYING.
|
||||||
# Copyright (c) 2019 Alexander Sosedkin and other contributors, see AUTHORS.
|
# Copyright (c) 2019 Alexander Sosedkin and other contributors, see AUTHORS.
|
||||||
|
|
||||||
{ config, writeScript }:
|
{ config, lib, writeScript }:
|
||||||
|
|
||||||
|
let
|
||||||
|
inherit (config.build) installationDir;
|
||||||
|
in
|
||||||
|
|
||||||
writeScript "login" ''
|
writeScript "login" ''
|
||||||
#!/system/bin/sh
|
#!/system/bin/sh
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
export USER="${config.user.userName}"
|
export USER="${config.user.userName}"
|
||||||
export PROOT_TMP_DIR=${config.build.installationDir}/tmp
|
export PROOT_TMP_DIR=${installationDir}/tmp
|
||||||
export PROOT_L2S_DIR=${config.build.installationDir}/.l2s
|
export PROOT_L2S_DIR=${installationDir}/.l2s
|
||||||
|
|
||||||
exec "${config.build.installationDir}/bin/proot-static" \
|
${
|
||||||
-b ${config.build.installationDir}/nix:/nix \
|
if config.build.initialBuild
|
||||||
-b ${config.build.installationDir}/bin:/bin \
|
then ''
|
||||||
-b ${config.build.installationDir}/etc:/etc \
|
${installationDir}/bin/proot-static \
|
||||||
-b ${config.build.installationDir}/tmp:/tmp \
|
-b ${installationDir}/nix:/nix \
|
||||||
-b ${config.build.installationDir}/usr:/usr \
|
-b ${installationDir}/bin:/bin \
|
||||||
|
-b ${installationDir}/etc:/etc \
|
||||||
|
-b ${installationDir}/tmp:/tmp \
|
||||||
|
-b ${installationDir}/usr:/usr \
|
||||||
-b /:/android \
|
-b /:/android \
|
||||||
--link2symlink \
|
--link2symlink \
|
||||||
${config.build.installationDir}/bin/sh ${config.build.installationDir}/usr/lib/login-inner "$@"
|
${installationDir}/bin/sh ${installationDir}/usr/lib/login-inner "$@"
|
||||||
|
|
||||||
|
exec ${installationDir}/bin/login "$@"
|
||||||
|
''
|
||||||
|
else ''
|
||||||
|
exec ${installationDir}/bin/proot-static \
|
||||||
|
-b ${installationDir}/nix:/nix \
|
||||||
|
-b ${installationDir}/bin:/bin \
|
||||||
|
-b ${installationDir}/etc:/etc \
|
||||||
|
-b ${installationDir}/tmp:/tmp \
|
||||||
|
-b ${installationDir}/usr:/usr \
|
||||||
|
-b /:/android \
|
||||||
|
--link2symlink \
|
||||||
|
${installationDir}/bin/sh ${installationDir}/usr/lib/login-inner "$@"
|
||||||
|
''
|
||||||
|
}
|
||||||
''
|
''
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue