Merge branch 'master' of https://github.com/marmarek/qubes-core-agent-linux
Conflicts: archlinux/PKGBUILD.install
This commit is contained in:
commit
fcee020cf5
@ -68,7 +68,7 @@ done
|
||||
|
||||
package() {
|
||||
# Note: Archlinux removed use of directory such as /sbin /bin /usr/sbin (https://mailman.archlinux.org/pipermail/arch-dev-public/2012-March/022625.html)
|
||||
|
||||
|
||||
(cd qrexec; make install DESTDIR=$pkgdir SBINDIR=/usr/bin LIBDIR=/usr/lib SYSLIBDIR=/usr/lib)
|
||||
|
||||
make install-vm DESTDIR=$pkgdir SBINDIR=/usr/bin LIBDIR=/usr/lib SYSLIBDIR=/usr/lib DROPIN_DIR=usr/lib/systemd/system DIST=archlinux
|
||||
|
@ -1,5 +1,4 @@
|
||||
|
||||
|
||||
###########################
|
||||
## Pre-Install functions ##
|
||||
###########################
|
||||
@ -29,7 +28,7 @@ pre_install() {
|
||||
mkdir -p /var/lib/qubes
|
||||
|
||||
# Backup fstab / But use archlinux defaults (cp instead of mv)
|
||||
if [ -e /etc/fstab ] ; then
|
||||
if [ -e /etc/fstab ] ; then
|
||||
cp /etc/fstab /var/lib/qubes/fstab.orig
|
||||
fi
|
||||
|
||||
@ -71,7 +70,6 @@ configure_selinux() {
|
||||
# sed -e s/^SELINUX=.*$/SELINUX=disabled/ -i /etc/selinux/config
|
||||
# setenforce 0 2>/dev/null
|
||||
|
||||
|
||||
}
|
||||
|
||||
############################
|
||||
@ -83,7 +81,7 @@ update_qubesconfig() {
|
||||
# Remove ip_forward setting from sysctl, so NM will not reset it
|
||||
# Archlinux now use sysctl.d/ instead of sysctl.conf
|
||||
#sed 's/^net.ipv4.ip_forward.*/#\0/' -i /etc/sysctl.conf
|
||||
|
||||
|
||||
# Remove old firmware updates link
|
||||
if [ -L /lib/firmware/updates ]; then
|
||||
rm -f /lib/firmware/updates
|
||||
@ -102,7 +100,7 @@ update_qubesconfig() {
|
||||
# Location of files which contains list of protected files
|
||||
mkdir -p /etc/qubes/protected-files.d
|
||||
PROTECTED_FILE_LIST='/etc/qubes/protected-files.d'
|
||||
|
||||
|
||||
# qubes-core-vm has been broken for some time - it overrides /etc/hosts; restore original content
|
||||
if ! grep -rq "^/etc/hosts$" "${PROTECTED_FILE_LIST}" 2>/dev/null; then
|
||||
if ! grep -q localhost /etc/hosts; then
|
||||
@ -112,7 +110,7 @@ update_qubesconfig() {
|
||||
EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
# ensure that hostname resolves to 127.0.0.1 resp. ::1 and that /etc/hosts is
|
||||
# in the form expected by qubes-sysinit.sh
|
||||
if ! grep -rq "^/etc/hostname$" "${PROTECTED_FILE_LIST}" 2>/dev/null; then
|
||||
@ -149,7 +147,7 @@ PRESET_FAILED=0
|
||||
if [ $1 -eq 1 ]; then
|
||||
systemctl --no-reload preset-all > /dev/null 2>&1 && PRESET_FAILED=0 || PRESET_FAILED=1
|
||||
else
|
||||
services="qubes-dvm qubes-misc-post qubes-firewall qubes-mount-home"
|
||||
services="qubes-dvm qubes-misc-post qubes-firewall qubes-mount-dirs"
|
||||
services="$services qubes-netwatcher qubes-network qubes-sysinit"
|
||||
services="$services qubes-iptables qubes-updates-proxy qubes-qrexec-agent"
|
||||
services="$services qubes-random-seed"
|
||||
@ -199,7 +197,7 @@ update_finalize() {
|
||||
sed '/session\t\trequired\tpam_unix.so/asession\t\tinclude\t\tsystem-login' -i /etc/pam.d/su
|
||||
cp /etc/pam.d/su /etc/pam.d/su-l
|
||||
fi
|
||||
|
||||
|
||||
# Archlinux specific: ensure tty1 is enabled
|
||||
rm -f /etc/systemd/system/getty.target.wants/getty@tty*.service
|
||||
systemctl enable getty\@tty1.service
|
||||
@ -227,15 +225,15 @@ post_install() {
|
||||
if [ $(basename $f) == "xen-backend.rules" ] ; then
|
||||
continue
|
||||
fi
|
||||
|
||||
|
||||
if [ $(basename $f) == "50-qubes-misc.rules" ] ; then
|
||||
continue
|
||||
fi
|
||||
|
||||
|
||||
if echo $f | grep -q qubes; then
|
||||
continue
|
||||
fi
|
||||
|
||||
|
||||
mv $f /var/lib/qubes/removed-udev-scripts/
|
||||
done
|
||||
|
||||
@ -252,8 +250,6 @@ post_install() {
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
## arg 1: the new package version
|
||||
## arg 2: the old package version
|
||||
post_upgrade() {
|
||||
@ -263,13 +259,10 @@ post_upgrade() {
|
||||
configure_notification-daemon
|
||||
configure_selinux
|
||||
|
||||
configure_systemd 1
|
||||
|
||||
update_finalize
|
||||
|
||||
/usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas &> /dev/null || :
|
||||
|
||||
|
||||
}
|
||||
|
||||
######################
|
||||
@ -299,12 +292,8 @@ post_remove() {
|
||||
rm /lib/firmware/updates
|
||||
fi
|
||||
|
||||
rm -rf /var/lib/qubes/xdg
|
||||
|
||||
for srv in qubes-dvm qubes-sysinit qubes-misc-post qubes-mount-home qubes-netwatcher qubes-network qubes-qrexec-agent; do
|
||||
for srv in qubes-dvm qubes-sysinit qubes-misc-post qubes-mount-dirs qubes-netwatcher qubes-network qubes-qrexec-agent; do
|
||||
systemctl disable $srv.service
|
||||
done
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
4
debian/qubes-core-agent.postinst
vendored
4
debian/qubes-core-agent.postinst
vendored
@ -100,7 +100,7 @@ case "${1}" in
|
||||
# Systemd preload-all
|
||||
systemdPreload
|
||||
|
||||
# Maybe install overridden serial.conf init script
|
||||
# Maybe install overridden serial.conf init script
|
||||
installSerialConf
|
||||
fi
|
||||
|
||||
@ -150,7 +150,7 @@ case "${1}" in
|
||||
/usr/lib/qubes/qubes-trigger-sync-appmenus.sh || true
|
||||
;;
|
||||
|
||||
# Install overridden serial.conf init script
|
||||
# Install overridden serial.conf init script
|
||||
/etc/init/serial.conf)
|
||||
installSerialConf
|
||||
;;
|
||||
|
2
debian/qubes-core-agent.postrm
vendored
2
debian/qubes-core-agent.postrm
vendored
@ -22,7 +22,7 @@ set -e
|
||||
#
|
||||
# Called when the old postrm upgrade action fails. The new package will be
|
||||
# unpacked, but only essential packages and pre-dependencies can be relied on.
|
||||
# Pre-dependencies will either be configured or will be "Unpacked" or
|
||||
# Pre-dependencies will either be configured or will be "Unpacked" or
|
||||
# "Half-Configured" but previously had been configured and was never removed.
|
||||
#
|
||||
# * <new-postrm> 'abort-install'
|
||||
|
10
debian/qubes-core-agent.preinst
vendored
10
debian/qubes-core-agent.preinst
vendored
@ -10,10 +10,10 @@ set -e
|
||||
# * <new-preinst> 'install' <old-version>
|
||||
# * <new-preinst> 'upgrade' <old-version>
|
||||
#
|
||||
# The package will not yet be unpacked, so the preinst script cannot rely
|
||||
# on any files included in its package. Only essential packages and
|
||||
# pre-dependencies (Pre-Depends) may be assumed to be available.
|
||||
# Pre-dependencies will have been configured at least once, but at the time the
|
||||
# The package will not yet be unpacked, so the preinst script cannot rely
|
||||
# on any files included in its package. Only essential packages and
|
||||
# pre-dependencies (Pre-Depends) may be assumed to be available.
|
||||
# Pre-dependencies will have been configured at least once, but at the time the
|
||||
# preinst is called they may only be in an "Unpacked" or "Half-Configured" state
|
||||
# if a previous version of the pre-dependency was completely configured and has
|
||||
# not been removed since then.
|
||||
@ -26,7 +26,7 @@ set -e
|
||||
# be partly from the new version or partly missing, so the script cannot rely
|
||||
# on files included in the package. Package dependencies may not be available.
|
||||
# Pre-dependencies will be at least "Unpacked" following the same rules as
|
||||
# above, except they may be only "Half-Installed" if an upgrade of the
|
||||
# above, except they may be only "Half-Installed" if an upgrade of the
|
||||
# pre-dependency failed.[46]
|
||||
#
|
||||
# For details, see http://www.debian.org/doc/debian-policy/ or
|
||||
|
10
debian/qubes-core-agent.prerm
vendored
10
debian/qubes-core-agent.prerm
vendored
@ -9,14 +9,14 @@ set -e
|
||||
# * <prerm> 'remove'
|
||||
# * <old-prerm> 'upgrade' <new-version>
|
||||
# * <conflictor's-prerm> 'remove' 'in-favour' <package> <new-version>
|
||||
# * <deconfigured's-prerm> 'deconfigure' 'in-favour' <package-being-installed>
|
||||
# * <deconfigured's-prerm> 'deconfigure' 'in-favour' <package-being-installed>
|
||||
# <version> [removing conflicting-package version]
|
||||
#
|
||||
# The package whose prerm is being called will be at least "Half-Installed".
|
||||
# All package dependencies will at least be "Half-Installed" and will have
|
||||
# previously been configured and not removed. If there was no error, all
|
||||
# dependencies will at least be "Unpacked", but these actions may be called in
|
||||
# various error states where dependencies are only "Half-Installed" due to a
|
||||
# All package dependencies will at least be "Half-Installed" and will have
|
||||
# previously been configured and not removed. If there was no error, all
|
||||
# dependencies will at least be "Unpacked", but these actions may be called in
|
||||
# various error states where dependencies are only "Half-Installed" due to a
|
||||
# partial upgrade.
|
||||
#
|
||||
# * <new-prerm> 'failed-upgrade' <old-version>
|
||||
|
@ -21,7 +21,7 @@ install: manpages
|
||||
gzip -f $<
|
||||
|
||||
manpages: $(QVM_DOCS) $(QUBES_DOCS) $(VM_DOCS)
|
||||
|
||||
|
||||
preview: $(rst)
|
||||
pandoc -s -f rst -t man $(rst) | groff -mandoc -Tlatin1 | less -R
|
||||
|
||||
|
@ -264,7 +264,7 @@ case "$command" in
|
||||
rm $HOTPLUG_STORE-*
|
||||
fi
|
||||
release_lock "block"
|
||||
|
||||
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
|
@ -1,11 +1,11 @@
|
||||
Section "ServerLayout"
|
||||
Section "ServerLayout"
|
||||
Identifier "Default Layout"
|
||||
Screen 0 "Screen0" 0 0
|
||||
Screen 0 "Screen0" 0 0
|
||||
EndSection
|
||||
|
||||
Section "Device"
|
||||
Identifier "Videocard0"
|
||||
Driver "dummy"
|
||||
Driver "dummy"
|
||||
VideoRam 4001
|
||||
EndSection
|
||||
|
||||
@ -13,7 +13,7 @@ Section "Monitor"
|
||||
Identifier "Monitor0"
|
||||
HorizSync 49-50
|
||||
VertRefresh 62-63
|
||||
Modeline "QB1280x800" 64 1280 1281 1282 1283 800 801 802 803
|
||||
Modeline "QB1280x800" 64 1280 1281 1282 1283 800 801 802 803
|
||||
EndSection
|
||||
|
||||
Section "Screen"
|
||||
@ -23,8 +23,8 @@ Section "Screen"
|
||||
DefaultDepth 24
|
||||
SubSection "Display"
|
||||
Viewport 0 0
|
||||
Depth 24
|
||||
Modes "QB1280x800"
|
||||
Depth 24
|
||||
Modes "QB1280x800"
|
||||
EndSubSection
|
||||
EndSection
|
||||
|
||||
|
@ -27,7 +27,7 @@ import subprocess
|
||||
|
||||
requires_api_version = '2.4'
|
||||
plugin_type = (TYPE_CORE,)
|
||||
|
||||
|
||||
def posttrans_hook(conduit):
|
||||
# Get all updates available _before_ this transaction
|
||||
pkg_list = conduit._base.doPackageLists(pkgnarrow='updates')
|
||||
|
@ -8,7 +8,7 @@
|
||||
^http://mirrors\..*/mirrorlist\?
|
||||
|
||||
# Debian filters
|
||||
#
|
||||
#
|
||||
# Whonix uses sourceforge to host its repos and url can end in:
|
||||
# '/' or '/download' or '?.*'
|
||||
# -----------------------------------------------------------------------------
|
||||
|
@ -45,7 +45,7 @@ while true; do
|
||||
echo "Failed applying rules for $i: $ERRS" >&2
|
||||
OUT="$OUT$ERRS"
|
||||
fi
|
||||
done
|
||||
done
|
||||
qubesdb-write $XENSTORE_ERROR "$OUT"
|
||||
if [ -n "$OUT" ]; then
|
||||
DISPLAY=:0 /usr/bin/notify-send -t 3000 "Firewall loading error ($(hostname))" "$OUT" || :
|
||||
|
@ -41,7 +41,7 @@ start() {
|
||||
else
|
||||
echo FAIL; return 1
|
||||
fi
|
||||
|
||||
|
||||
return $ret
|
||||
}
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
# setup-ip is potentially invoked before qubes-sysinit.sh is done, therefore
|
||||
# we perform our qubesdb reads here instead of relying on qvm-service
|
||||
# we perform our qubesdb reads here instead of relying on qvm-service
|
||||
# files under /var/run/qubes-service/
|
||||
disablegw=`qubesdb-read /qubes-service/disable-default-route 2> /dev/null`
|
||||
disabledns=`qubesdb-read /qubes-service/disable-dns-server 2> /dev/null`
|
||||
|
@ -1,24 +1,24 @@
|
||||
#!/bin/bash
|
||||
#!/bin/bash
|
||||
#============================================================================
|
||||
# /etc/xen/vif-route-qubes
|
||||
#
|
||||
# Script for configuring a vif in routed mode.
|
||||
# The hotplugging system will call this script if it is specified either in
|
||||
# the device configuration given to Xend, or the default Xend configuration
|
||||
# /etc/xen/vif-route-qubes
|
||||
#
|
||||
# Script for configuring a vif in routed mode.
|
||||
# The hotplugging system will call this script if it is specified either in
|
||||
# the device configuration given to Xend, or the default Xend configuration
|
||||
# in /etc/xen/xend-config.sxp. If the script is specified in neither of those
|
||||
# places, then vif-bridge is the default.
|
||||
#
|
||||
# Usage:
|
||||
# vif-route (add|remove|online|offline)
|
||||
#
|
||||
# Environment vars:
|
||||
# vif vif interface name (required).
|
||||
# XENBUS_PATH path to this device's details in the XenStore (required).
|
||||
#
|
||||
# Read from the store:
|
||||
# ip list of IP networks for the vif, space-separated (default given in
|
||||
# this script).
|
||||
#============================================================================
|
||||
# places, then vif-bridge is the default.
|
||||
#
|
||||
# Usage:
|
||||
# vif-route (add|remove|online|offline)
|
||||
#
|
||||
# Environment vars:
|
||||
# vif vif interface name (required).
|
||||
# XENBUS_PATH path to this device's details in the XenStore (required).
|
||||
#
|
||||
# Read from the store:
|
||||
# ip list of IP networks for the vif, space-separated (default given in
|
||||
# this script).
|
||||
#============================================================================
|
||||
|
||||
dir=$(dirname "$0")
|
||||
. "$dir/vif-common.sh"
|
||||
|
@ -13,12 +13,12 @@ fi
|
||||
|
||||
if [ x"$action" = x"suspend" ]; then
|
||||
dbus-send --system --print-reply \
|
||||
--dest=org.freedesktop.NetworkManager \
|
||||
--dest=org.freedesktop.NetworkManager \
|
||||
/org/freedesktop/NetworkManager \
|
||||
org.freedesktop.NetworkManager.Sleep boolean:true || \
|
||||
service NetworkManager stop
|
||||
# Force interfaces down, just in case when NM didn't done it
|
||||
for if in `ls /sys/class/net|grep -v "lo\|vif"`; do
|
||||
for if in `ls /sys/class/net|grep -v "lo\|vif"`; do
|
||||
if [ "`cat /sys/class/net/$if/device/devtype 2>/dev/null`" = "vif" ]; then
|
||||
continue
|
||||
fi
|
||||
|
@ -52,10 +52,10 @@ int main(int argc __attribute((__unused__)), char ** argv __attribute__((__unuse
|
||||
}
|
||||
mkdir(INCOMING_DIR_ROOT, 0700);
|
||||
if (asprintf(&incoming_dir, "%s/%s", INCOMING_DIR_ROOT, remote_domain) < 0)
|
||||
gui_fatal("Error allocating memory");
|
||||
gui_fatal("Error allocating memory");
|
||||
mkdir(incoming_dir, 0700);
|
||||
if (chdir(incoming_dir))
|
||||
gui_fatal("Error chdir to %s", incoming_dir);
|
||||
gui_fatal("Error chdir to %s", incoming_dir);
|
||||
|
||||
if (mount(".", ".", NULL, MS_BIND | MS_NODEV | MS_NOEXEC | MS_NOSUID, NULL) < 0)
|
||||
gui_fatal("Failed to mount a directory %s", incoming_dir);
|
||||
|
@ -100,8 +100,8 @@ void talk_to_daemon(const char *fname)
|
||||
int main(int argc, char ** argv)
|
||||
{
|
||||
signal(SIGPIPE, SIG_IGN);
|
||||
if (argc!=2)
|
||||
if (argc!=2)
|
||||
gui_fatal("OpenInVM - no file given?");
|
||||
talk_to_daemon(argv[1]);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
echo Starting Backupcopy
|
||||
read args
|
||||
echo Arguments: $args
|
||||
echo Arguments: $args
|
||||
if [ -d "$args" ] ; then
|
||||
echo "Performing backup to directory $args"
|
||||
TARGET="$args/qubes-backup-`date +'%Y-%m-%dT%H%M%S'`"
|
||||
|
@ -30,7 +30,7 @@ qdbus $REF org.freedesktop.DBus.Properties.Set "" maximum $SIZE
|
||||
export PROGRESS_TYPE=gui
|
||||
|
||||
/usr/lib/qubes/qrexec-client-vm $VM qubes.Filecopy \
|
||||
/usr/lib/qubes/qfile-agent "$@" |
|
||||
/usr/lib/qubes/qfile-agent "$@" |
|
||||
(while read sentsize ; do
|
||||
CURRSIZE=$(($sentsize/1024))
|
||||
qdbus $REF org.freedesktop.DBus.Properties.Set "" value $CURRSIZE
|
||||
@ -38,6 +38,6 @@ done)
|
||||
|
||||
qdbus $REF close
|
||||
# we do not want a dozen error messages, do we
|
||||
# if ! [ "x"$agentstatus = xDONE ] ; then
|
||||
# if ! [ "x"$agentstatus = xDONE ] ; then
|
||||
# kdialog --sorry 'Abnormal file copy termination; see /var/log/qubes/qrexec.xid.log in dom0 for more details'
|
||||
# fi
|
||||
|
@ -31,7 +31,7 @@ export PROGRESS_TYPE=gui
|
||||
|
||||
set -o pipefail
|
||||
/usr/lib/qubes/qrexec-client-vm $VM qubes.Filecopy \
|
||||
/usr/lib/qubes/qfile-agent "$@" |
|
||||
/usr/lib/qubes/qfile-agent "$@" |
|
||||
(while read sentsize ; do
|
||||
CURRSIZE=$(($sentsize/1024))
|
||||
qdbus $REF org.freedesktop.DBus.Properties.Set "" value $CURRSIZE
|
||||
@ -42,6 +42,6 @@ fi
|
||||
|
||||
qdbus $REF close
|
||||
# we do not want a dozen error messages, do we
|
||||
# if ! [ "x"$agentstatus = xDONE ] ; then
|
||||
# if ! [ "x"$agentstatus = xDONE ] ; then
|
||||
# kdialog --sorry 'Abnormal file copy termination; see /var/log/qubes/qrexec.xid.log in dom0 for more details'
|
||||
# fi
|
||||
|
@ -42,7 +42,7 @@ class QubesMruDialog(gtk.Dialog):
|
||||
# does not work as advertised
|
||||
# using key-press-event instead
|
||||
#self.set_default_response(gtk.RESPONSE_OK)
|
||||
|
||||
|
||||
self.connect("destroy", lambda *w: gtk.main_quit())
|
||||
self.connect("response", self.response_callback)
|
||||
self.connect("key-press-event", self.key_press_callback)
|
||||
|
@ -20,7 +20,7 @@
|
||||
#
|
||||
#
|
||||
|
||||
if ! [ $# = 1 ] ; then
|
||||
if ! [ $# = 1 ] ; then
|
||||
echo "Usage: $0 filename"
|
||||
exit 1
|
||||
fi
|
||||
|
@ -20,7 +20,7 @@
|
||||
#
|
||||
#
|
||||
|
||||
if ! [ $# = 2 ] ; then
|
||||
if ! [ $# = 2 ] ; then
|
||||
echo "Usage: $0 vmname filename"
|
||||
exit 1
|
||||
fi
|
||||
|
@ -20,7 +20,7 @@
|
||||
#
|
||||
#
|
||||
|
||||
if [ $# -lt 2 ] ; then
|
||||
if [ $# -lt 2 ] ; then
|
||||
cat <<USAGE
|
||||
Usage: $0 vmname command arguments
|
||||
Executes a command in another VM using the qubes.VMShell RPC service. The
|
||||
|
@ -709,7 +709,7 @@ ustar_rd (int fd, struct file_header * untrusted_hdr, char *buf, struct stat * s
|
||||
char * last_token = strtok(dirbuf,"/");
|
||||
char * token = strtok(NULL, "/");
|
||||
while (token != NULL) {
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
fprintf(stderr,"Found directory %s (last:%s)\n",token,last_token);
|
||||
#endif
|
||||
@ -727,7 +727,7 @@ ustar_rd (int fd, struct file_header * untrusted_hdr, char *buf, struct stat * s
|
||||
if (path == NULL)
|
||||
return MEMORY_ALLOC_FAILED;
|
||||
path[pathsize] = '/';
|
||||
|
||||
|
||||
strncpy(path+pathsize+1, last_token, strlen(last_token));
|
||||
path[pathsize+strlen(last_token)+1] = '\0';
|
||||
}
|
||||
@ -773,7 +773,7 @@ ustar_rd (int fd, struct file_header * untrusted_hdr, char *buf, struct stat * s
|
||||
|
||||
dir_header.mode = untrusted_hdr->mode | S_IFDIR;
|
||||
dir_header.filelen = 0;
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
fprintf(stderr,"Sending directory headers for %s\n",path);
|
||||
#endif
|
||||
@ -785,7 +785,7 @@ ustar_rd (int fd, struct file_header * untrusted_hdr, char *buf, struct stat * s
|
||||
}
|
||||
free(path);
|
||||
free(dirbuf);
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
fprintf(stderr,"End of directory checks\n");
|
||||
#endif
|
||||
|
@ -194,7 +194,7 @@ main()
|
||||
case 0:
|
||||
null_fd = open("/dev/null", O_RDONLY);
|
||||
dup2(null_fd, 0);
|
||||
close(null_fd);
|
||||
close(null_fd);
|
||||
|
||||
env_file = fopen("/tmp/qubes-session-env", "r");
|
||||
while(fscanf(env_file, "%1024[^=]=%4096[^\n]\n", var, val) == 2) {
|
||||
|
@ -3,7 +3,7 @@ wrap_in_html_if_url()
|
||||
case "$1" in
|
||||
*://*)
|
||||
FILE_ARGUMENT=$(mktemp)
|
||||
|
||||
|
||||
echo -n '<html><meta HTTP-EQUIV="REFRESH" content="0; url=' > $FILE_ARGUMENT
|
||||
echo -n "$1" >> $FILE_ARGUMENT
|
||||
echo '"></html>' >> $FILE_ARGUMENT
|
||||
@ -13,5 +13,4 @@ wrap_in_html_if_url()
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -111,7 +111,7 @@ exit 0
|
||||
fi
|
||||
|
||||
mkdir -p /var/lib/qubes
|
||||
if [ -e /etc/fstab ] ; then
|
||||
if [ -e /etc/fstab ] ; then
|
||||
mv /etc/fstab /var/lib/qubes/fstab.orig
|
||||
fi
|
||||
|
||||
@ -486,7 +486,7 @@ The Qubes core startup configuration for SystemD init.
|
||||
/lib/systemd/system/qubes-dvm.service
|
||||
/lib/systemd/system/qubes-misc-post.service
|
||||
/lib/systemd/system/qubes-firewall.service
|
||||
/lib/systemd/system/qubes-mount-home.service
|
||||
/lib/systemd/system/qubes-mount-dirs.service
|
||||
/lib/systemd/system/qubes-netwatcher.service
|
||||
/lib/systemd/system/qubes-network.service
|
||||
/lib/systemd/system/qubes-iptables.service
|
||||
@ -505,7 +505,7 @@ The Qubes core startup configuration for SystemD init.
|
||||
/usr/lib/qubes/init/qubes-iptables
|
||||
/usr/lib/qubes/init/misc-post.sh
|
||||
/usr/lib/qubes/init/misc-post-stop.sh
|
||||
/usr/lib/qubes/init/mount-home.sh
|
||||
/usr/lib/qubes/init/mount-dirs.sh
|
||||
/usr/lib/qubes/init/qubes-random-seed.sh
|
||||
/usr/lib/qubes/init/qubes-sysinit.sh
|
||||
/lib/systemd/system/chronyd.service.d/30_qubes.conf
|
||||
@ -526,7 +526,7 @@ PRESET_FAILED=0
|
||||
if [ $1 -eq 1 ]; then
|
||||
/bin/systemctl --no-reload preset-all > /dev/null 2>&1 && PRESET_FAILED=0 || PRESET_FAILED=1
|
||||
else
|
||||
services="qubes-dvm qubes-misc-post qubes-firewall qubes-mount-home"
|
||||
services="qubes-dvm qubes-misc-post qubes-firewall qubes-mount-dirs"
|
||||
services="$services qubes-netwatcher qubes-network qubes-sysinit"
|
||||
services="$services qubes-iptables qubes-updates-proxy qubes-qrexec-agent"
|
||||
services="$services qubes-random-seed"
|
||||
@ -573,6 +573,6 @@ if [ "$1" != 0 ] ; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
for srv in qubes-dvm qubes-sysinit qubes-misc-post qubes-mount-home qubes-netwatcher qubes-network qubes-qrexec-agent; do
|
||||
for srv in qubes-dvm qubes-sysinit qubes-misc-post qubes-mount-dirs qubes-netwatcher qubes-network qubes-qrexec-agent; do
|
||||
/bin/systemctl disable $srv.service
|
||||
do
|
||||
|
@ -51,7 +51,7 @@ start()
|
||||
possibly_run_save_script
|
||||
umount /rw
|
||||
dmesg -c >/dev/null
|
||||
free | grep Mem: |
|
||||
free | grep Mem: |
|
||||
(read a b c d ; qubesdb-write /qubes-used-mem $c)
|
||||
# give dom0 time to read some entries, when done it will shutdown qubesdb,
|
||||
# so wait for it
|
||||
|
@ -33,7 +33,7 @@ start()
|
||||
/usr/lib/qubes/qubes-setup-dnat-to-ns
|
||||
echo "1" > /proc/sys/net/ipv4/ip_forward
|
||||
fi
|
||||
|
||||
|
||||
success
|
||||
echo ""
|
||||
return 0
|
||||
|
@ -66,7 +66,7 @@ enable qubes-updates-proxy.service
|
||||
enable qubes-dvm.service
|
||||
enable qubes-network.service
|
||||
enable qubes-qrexec-agent.service
|
||||
enable qubes-mount-home.service
|
||||
enable qubes-mount-dirs.service
|
||||
enable qubes-firewall.service
|
||||
enable qubes-netwatcher.service
|
||||
enable qubes-meminfo-writer.service
|
||||
|
@ -16,7 +16,7 @@ if true; then
|
||||
dmesg -c >/dev/null
|
||||
qubesdb-watch /qubes-restore-complete &
|
||||
watch_pid=$!
|
||||
free | grep Mem: |
|
||||
free | grep Mem: |
|
||||
(read label total used free shared buffers cached; qubesdb-write /qubes-used-mem $(( $used + $cached )) )
|
||||
# we're still running in DispVM template
|
||||
echo "Waiting for save/restore..."
|
||||
|
@ -1,6 +1,6 @@
|
||||
[Unit]
|
||||
Description=Qubes misc post-boot actions
|
||||
After=qubes-dvm.service qubes-mount-home.service
|
||||
After=qubes-dvm.service qubes-mount-dirs.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
|
@ -5,7 +5,7 @@ Before=qubes-gui-agent.service
|
||||
[Service]
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
ExecStart=/usr/lib/qubes/init/mount-home.sh
|
||||
ExecStart=/usr/lib/qubes/init/mount-dirs.sh
|
||||
# Fedora and Debian have different paths for fuser
|
||||
ExecStop=/bin/sh -c 'fuser -kMm /home' ; /bin/umount /home
|
||||
ExecStopPost=-/bin/umount /rw
|
Loading…
Reference in New Issue
Block a user