Commit Graph

2539 Commits

Author SHA1 Message Date
Marek Marczykowski-Górecki
75e54cd5ef
Implement D-Bus Activation of desktop files manually
This part of GIO library isn't suitable for short-lived processes (the
call is done asynchronously and may not reach the application before
qubes-desktop-run process is terminated). To fix this, implement dbus
activation manually, synchronously.
While at it, implement waiting for application to terminate (useful in
DispVM), by waiting for its dbus name to disappear.
dbus-python API isn't particularly nice, but don't switch to completely different
library as a stable update.

Fixes QubesOS/qubes-issues#2449
2019-03-20 05:04:58 +01:00
Marek Marczykowski-Górecki
3d65517886
version 4.0.43 2019-03-08 03:07:40 +01:00
Marek Marczykowski-Górecki
70d6237caa
Revert "Use sfdisk instead of parted to ..." on stretch and jessie
util-linux is too old there

QubesOS/qubes-issues#4419
2019-02-24 05:15:04 +01:00
Marek Marczykowski-Górecki
9792438b3f
Use sfdisk instead of parted to resize root partition table
parted tries to load random data for possible partiont table UUID
generation, even though there is no need to generate new UUID. In case
of early VM startup, this is very undesirable as random entropy pool may
not be initialized yet, which will cause parted to block.

Use sfdisk instead, which doesn't try to do that. And also can relocate
backup GPT and resize partition in one go.

Fixes QubesOS/qubes-issues#4419
2019-02-24 03:12:14 +01:00
Marek Marczykowski-Górecki
45d3b8d159
version 4.0.42 2019-02-21 05:12:59 +01:00
Marek Marczykowski-Górecki
75dd034ceb
Add qubes version to marker-vm file
QubesOS/qubes-issues#1963
2019-02-11 19:28:35 +01:00
Marek Marczykowski-Górecki
9a125af36b
Merge remote-tracking branch 'origin/pr/152'
* origin/pr/152:
  Use dumpe2fs for filesystem size calculations
2019-02-11 15:03:57 +01:00
Marek Marczykowski-Górecki
3b538df5d0
Merge remote-tracking branch 'origin/pr/151'
* origin/pr/151:
  Introduce /usr/share/qubes/marker-vm
2019-02-11 14:59:04 +01:00
Marek Marczykowski-Górecki
6ac171a238
Merge remote-tracking branch 'origin/pr/150'
* origin/pr/150:
  Add apt-transport-https dependency
  Switch to HTTPS
2019-02-11 14:58:31 +01:00
AJ Jordan
593724c05b
Use dumpe2fs for filesystem size calculations
The previous approach used `df` to get usable space and then added a
fixed size to that number in order to account for filesystem
overhead. However, at some point that stopped working for me. It
appears that ext4 filesystem overhead can vary over time or because of
other factors. (Certainly now that I think about it the old code would
only work well for people with the exact same filesystem size as me.)

So the new approach is to just completely ignore what `df` tells us
and instead go directly to the source: the filesystem's internal
notion of exactly how much space it takes up. We use `dumpe2fs` to
retrieve this information and calculate the on-disk size dynamically
from that. Then we add the space that boot data takes up (unchanged),
and we add 5MB padding because when I tested this it didn't quite add
up otherwise. https://unix.stackexchange.com/a/13551/29146 suggests
that this unaccounted-for data may be e.g. additional copies of the
superblock.
2019-02-07 16:04:11 -05:00
Lunar
0b34737665
Add apt-transport-https dependency 2019-01-19 11:32:11 -06:00
Marek Marczykowski-Górecki
d4fa357faa
Introduce /usr/share/qubes/marker-vm
Make it easy for packages to detect Qubes VM.

Fixes QubesOS/qubes-issues#1963
2019-01-18 23:21:18 +01:00
Marek Marczykowski-Górecki
6799aad15e
debian: make ShellCheck happy 2019-01-15 21:10:27 +01:00
Lunar
84080005d3
Switch to HTTPS
https://github.com/QubesOS/qubes-issues/issues/4415
2019-01-15 13:06:01 -06:00
Marek Marczykowski-Górecki
1f41ee0e41
rpm: -networking package should depend on iproute
Network setup scripts, especially for network backend use 'ip' tool, so
the iproute package should be installed for this to work.

QubesOS/qubes-issues#4411
2019-01-13 12:27:56 +01:00
Marek Marczykowski-Górecki
81a5b2cc3a
version 4.0.41 2019-01-09 16:15:57 +01:00
Marek Marczykowski-Górecki
fed30c1da7
Add dependency on e2fsprogs
It is needed by the startup scripts to create fs on fresh private image.
Otherwise /rw (and thus /home) isn't mounted and user applications fail
to start.

Fixes QubesOS/qubes-issues#4671
2019-01-08 18:14:06 +01:00
Marek Marczykowski-Górecki
b47a61adcf
Make shellcheck happy 2018-12-15 23:45:34 +01:00
Marek Marczykowski-Górecki
b026524ec4
travis: disable "Prefer explicit escaping" shellcheck warning
People are used to using single backslash in grep (grep "\(xxx\)" etc)
and similar context, lets not make it confusing everywhere.
2018-12-15 23:21:10 +01:00
Marek Marczykowski-Górecki
f5ecf46362
travis: switch to xenial
QubesOS/qubes-issues#4613
2018-12-15 17:08:20 +01:00
Bo Rydberg
c9ec752923
Update spelling in setup-rw.sh 2018-12-14 17:07:28 +01:00
Marek Marczykowski-Górecki
7d7f6a3e69
version 4.0.40 2018-12-08 22:44:06 +01:00
Marek Marczykowski-Górecki
1b48bb1af8
Merge branch 'qrexec-notify'
* qrexec-notify:
  qrexec: add startup notification
2018-12-08 22:21:57 +01:00
Marek Marczykowski-Górecki
426f322c58
qrexec: add startup notification
Avoid race conditions with services ordered shortly after qrexec start.
Make systemd know when qrexec-agent is really ready to serve.

Fixes QubesOS/qubes-issues#3985
2018-12-08 12:32:56 +01:00
AJ Jordan
30137c76a4
Add XTerm as a dependency
Qubes Manager's update button fails in strange ways without it.
2018-12-07 01:10:34 -05:00
Marek Marczykowski-Górecki
8216e40007
Merge remote-tracking branch 'origin/pr/141'
* origin/pr/141:
  is_protected_file: if no config dir is present, assume the file is _not_ protected
  /rw/config
  Fix logic bug.
  Allow per-VM protected file list
2018-12-06 17:28:45 +01:00
Marek Marczykowski-Górecki
8ce95f0db1
is_protected_file: if no config dir is present, assume the file is _not_ protected 2018-12-06 14:44:42 +01:00
Marek Marczykowski-Górecki
8d7313b928
Fix updates notification on Fedora 29
Workaround for https://bugzilla.redhat.com/1650446
This caused not clearing updates-available flag after installing updates
in the template.

Fixes QubesOS/qubes-issues#2009
2018-12-05 06:26:25 +01:00
Marek Marczykowski-Górecki
bb28efe628
Fix updates checking on Fedora with dnf
yum wrapper may not be installed anymore

QubesOS/qubes-issues#2009
2018-12-05 05:48:00 +01:00
Marek Marczykowski-Górecki
8995993816
code style fix 2018-12-05 05:46:51 +01:00
Marek Marczykowski-Górecki
d92204e094
Merge remote-tracking branch 'origin/pr/145'
* origin/pr/145:
  Rephrase comment
2018-12-02 16:10:20 +01:00
AJ Jordan
235d44e632
Add quotes to placate ShellCheck 2018-12-01 19:30:07 -05:00
AJ Jordan
0f3b4985c3
Correct size_margin for rootfs resizes
See
https://github.com/QubesOS/qubes-core-agent-linux/pull/146#discussion_r238080117
for details; but tl;dr:

* Journal size is 64M
* Inode table is 256 bytes * 643376 inodes allocated = ~157M
* Reserved GDT blocks take up 1024 blocks * 4096 byte block size = 4M
* Fixed-size parts of the filesystem probably take up another MB or
  two

These actually adds up to more than the 222M number used in this
commit. But it seems _about_ right, so just Ship It(tm).
2018-12-01 18:46:46 -05:00
AJ Jordan
c05310f61c
Revert "Fix root volume size comparison"
This reverts commit 8000e76d43, because
as @marmarek pointed out, the original was correct and I totally
misread. The check in question is checking whether to _abort_, not
whether to continue. So we want to check if the block device size is
_less_ than the filesystem + margin, not more.

Reopens QubesOS/qubes-issues#4553
2018-12-01 16:19:56 -05:00
AJ Jordan
737a65e5e7
Rename variable to be more clear 2018-12-01 00:01:04 -05:00
AJ Jordan
ce78625bec
Remove weird spaces from script output 2018-12-01 00:01:02 -05:00
AJ Jordan
8000e76d43
Fix root volume size comparison
Fixes QubesOS/qubes-issues#4553
2018-12-01 00:00:57 -05:00
AJ Jordan
98a6b60a49
Remove unnecessary quotes 2018-11-30 23:56:13 -05:00
AJ Jordan
bc6c729a82
Simplify block number calculation 2018-11-30 23:46:09 -05:00
AJ Jordan
b85c1cec75
Rephrase comment 2018-11-28 23:25:09 -05:00
Marek Marczykowski-Górecki
4036e50604
version 4.0.39 2018-11-21 03:06:24 +01:00
Rudd-O
03883ece96
/rw/config 2018-11-15 19:08:46 +00:00
Marek Marczykowski-Górecki
c227b8672b
rpm: drop useless circular dependency
qubes-core-agent depends on -qrexec, there is no need for the opposite
dependency. In fact one of the reasons for the package split was to
allow installing just -qrexec package.
2018-11-13 03:44:56 +01:00
Marek Marczykowski-Górecki
3fe42d4a27
rpm, deb: add strict version dependency between qubes-core-agent-* pkgs
Base qubes-core-agent package have common files used by various
subpackages. It is important to update them at the same time, otherwise
for example python stubs in /usr/bin/* (like qubes-firewall) will not
match actual python modules.

Fixes QubesOS/qubes-issues#4499
2018-11-13 03:42:24 +01:00
unman
afaf88f153
make iproute2 a dependency for Debian core-networking 2018-11-08 13:29:33 +00:00
Marek Marczykowski-Górecki
2ab738deb6
version 4.0.38 2018-10-29 01:32:11 +01:00
Rudd-O
3b93db99f8
Fix logic bug. 2018-10-24 08:00:20 +00:00
Rudd-O
1ecb680b44
Allow per-VM protected file list
Hopefully this can be pushed as an update for Qubes 3.2 as well?
2018-10-24 07:32:19 +00:00
Marek Marczykowski-Górecki
914c96c1f1
Merge branch 'advertise-services'
* advertise-services:
  archlinux: no longer need to mangle shebang for python scripts
  Make shebang explicit /usr/bin/python2 where it's still there
  Tell dom0 that VM is running Linux
2018-10-24 01:41:30 +02:00
Marek Marczykowski-Górecki
e8ef22b546
archlinux: no longer need to mangle shebang for python scripts
It's patched to python2 (where applicable) in the original sources.
2018-10-24 00:26:38 +02:00