Can build AppImages more successfully.
- The meta/Recipes script doesn't run the post-install of debian packages, so some weren't installed correctly. - This scheme lets vigil install into a container as usual. - The files in the AppDir are calculated as the difference between the files in the initial debootstrapped container, and the container after the installation.
This commit is contained in:
parent
928462f8ff
commit
d90d711703
9 changed files with 141 additions and 85 deletions
20
appimage/AppRun
Executable file
20
appimage/AppRun
Executable file
|
|
@ -0,0 +1,20 @@
|
|||
#!/bin/sh
|
||||
|
||||
|
||||
# This is a modified version of the AppRun made by AppImage's meta/Recipe.
|
||||
|
||||
|
||||
set -e
|
||||
|
||||
|
||||
HERE="$(dirname "$(readlink -f "${0}")")"
|
||||
export UNION_PRELOAD="${HERE}"
|
||||
export LD_PRELOAD="${HERE}/libunionpreload.so"
|
||||
export LD_LIBRARY_PATH="${HERE}"/usr/lib/:"${HERE}"/usr/lib/i386-linux-gnu/:"${HERE}"/usr/lib/x86_64-linux-gnu/:"${HERE}"/usr/lib32/:"${HERE}"/usr/lib64/:"${HERE}"/lib/:"${HERE}"/lib/i386-linux-gnu/:"${HERE}"/lib/x86_64-linux-gnu/:"${HERE}"/lib32/:"${HERE}"/lib64/:"${LD_LIBRARY_PATH}"
|
||||
export PYTHONPATH="/usr/local/lib/python3.5/dist-packages:${HERE}"/usr/share/pyshared/:"${PYTHONPATH}"
|
||||
export XDG_DATA_DIRS="${HERE}"/usr/share/:"${XDG_DATA_DIRS}"
|
||||
export PERLLIB="${HERE}"/usr/share/perl5/:"${HERE}"/usr/lib/perl5/:"${PERLLIB}"
|
||||
export GSETTINGS_SCHEMA_DIR="${HERE}"/usr/share/glib-2.0/schemas/:"${GSETTINGS_SCHEMA_DIR}"
|
||||
export QT_PLUGIN_PATH="${HERE}"/usr/lib/qt4/plugins/:"${HERE}"/usr/lib/i386-linux-gnu/qt4/plugins/:"${HERE}"/usr/lib/x86_64-linux-gnu/qt4/plugins/:"${HERE}"/usr/lib32/qt4/plugins/:"${HERE}"/usr/lib64/qt4/plugins/:"${HERE}"/usr/lib/qt5/plugins/:"${HERE}"/usr/lib/i386-linux-gnu/qt5/plugins/:"${HERE}"/usr/lib/x86_64-linux-gnu/qt5/plugins/:"${HERE}"/usr/lib32/qt5/plugins/:"${HERE}"/usr/lib64/qt5/plugins/:"${QT_PLUGIN_PATH}"
|
||||
EXEC=$(grep -e '^Exec=.*' "${HERE}"/*.desktop | head -n 1 | cut -d "=" -f 2- | sed -e 's|%.||g')
|
||||
exec ${EXEC} $@
|
||||
BIN
appimage/libunionpreload.so
Executable file
BIN
appimage/libunionpreload.so
Executable file
Binary file not shown.
|
|
@ -1,29 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Copyright (C) 2017 Andrew Hamilton. All rights reserved.
|
||||
# Licensed under the Artistic License 2.0.
|
||||
|
||||
|
||||
set -e
|
||||
|
||||
|
||||
VIGIL_PATH=$(realpath $(dirname $0)/..)
|
||||
export VIGIL_PATH
|
||||
|
||||
|
||||
function get_patched_recipe {
|
||||
wget -c "https://github.com/AppImage/AppImages/raw/94d39b68d8d7ab56f31fde6f59bc8d2813d13599/recipes/meta/Recipe"
|
||||
cp Recipe Recipe-patched
|
||||
sed -i -e 's|delete_blacklisted|# delete_blacklisted|g' Recipe-patched
|
||||
chmod +x Recipe-patched
|
||||
}
|
||||
|
||||
|
||||
[ $# -eq 0 ] && WORK_PATH=$(mktemp -d --suffix=-appimage) || WORK_PATH="$1"
|
||||
cd "$WORK_PATH"
|
||||
$VIGIL_PATH/appimage/make-appimage-yml.py > vigil.yml
|
||||
get_patched_recipe
|
||||
./Recipe-patched --no-di vigil.yml
|
||||
mv out/Vigil* .
|
||||
echo
|
||||
echo "AppImage path: $(realpath Vigil*)"
|
||||
|
|
@ -1,48 +0,0 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
# Copyright (C) 2017 Andrew Hamilton. All rights reserved.
|
||||
# Licensed under the Artistic License 2.0.
|
||||
|
||||
|
||||
import vigil.tools as tools
|
||||
|
||||
|
||||
dist_deps = set()
|
||||
for dependency in tools.dependencies("ubuntu"):
|
||||
if "/" in dependency:
|
||||
raise ValueError
|
||||
else:
|
||||
dist_deps.add(dependency)
|
||||
dist_deps.update({"python3-pygments", "python3-pyinotify", "python3-docopt",
|
||||
"util-linux", "python3-pil"})
|
||||
dep_list = "\n - ".join(sorted(dist_deps))
|
||||
print("""app: vigil-code-monitor
|
||||
union: true
|
||||
|
||||
ingredients:
|
||||
packages:
|
||||
- %s
|
||||
dist: zesty
|
||||
sources:
|
||||
- deb http://archive.ubuntu.com/ubuntu/ zesty main universe
|
||||
|
||||
script:
|
||||
- export APPDIR=$(pwd)
|
||||
- export PYTHONPATH=$APPDIR/usr/share/pyshared
|
||||
- mkdir -p $PYTHONPATH
|
||||
- (cd $VIGIL_PATH; /usr/bin/python3 setup.py install \
|
||||
--prefix=$APPDIR/usr --install-lib=$PYTHONPATH)
|
||||
- cp $VIGIL_PATH/appimage/vigil-icon.png .
|
||||
- cp -a $VIGIL_PATH/tests .
|
||||
- cp $VIGIL_PATH/test-all tests
|
||||
- cat > vigil.desktop <<\EOF
|
||||
- [Desktop Entry]
|
||||
- Type=Application
|
||||
- Name=Vigil Code Monitor
|
||||
- Comment=Vigil maintains an up-to-date set of reports for every file in a codebase.
|
||||
- Exec=vigil
|
||||
- Terminal=true
|
||||
- Icon=vigil-icon.png
|
||||
- Categories=Application;
|
||||
- EOF
|
||||
""" % dep_list)
|
||||
8
appimage/vigil.desktop
Executable file
8
appimage/vigil.desktop
Executable file
|
|
@ -0,0 +1,8 @@
|
|||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=Vigil
|
||||
Comment=
|
||||
Exec=vigil
|
||||
Terminal=true
|
||||
Icon=vigil
|
||||
Categories=Application;
|
||||
|
Before Width: | Height: | Size: 701 B After Width: | Height: | Size: 701 B |
Loading…
Add table
Add a link
Reference in a new issue