[neon/neon/settings/Neon/unstable] /: new try to mark important stuff essential

Harald Sitter null at kde.org
Mon May 10 11:03:20 BST 2021


Git commit 8b2e74a2d20c620ada4084bc00f8dff11a3b2547 by Harald Sitter.
Committed on 10/05/2021 at 10:03.
Pushed by sitter into branch 'Neon/unstable'.

new try to mark important stuff essential

as the previous attempt at making the packages themselves essential had
the unintended side effect that packages started auto-installing when
they shouldn't have we'll now install a client side config that
configures essentials.

I'm not yet sure which package should install the essentials package
(probably plasma-desktop as recommends? - though arguably it could be
many of them, the more likely the essentials package gets installed the
better)

M  +7    -0    debian/control
A  +1    -0    debian/neon-essentials-desktop.install
A  +26   -0    essentials/50neon-essentials-desktop

https://invent.kde.org/neon/neon/settings/commit/8b2e74a2d20c620ada4084bc00f8dff11a3b2547

diff --git a/debian/control b/debian/control
index 76be97f..33fccc2 100644
--- a/debian/control
+++ b/debian/control
@@ -32,3 +32,10 @@ Architecture: all
 Depends: acpid, neon-settings-2, python3
 Description: Settings and artwork for KDE neon Pinebook
  This package contains settings used by KDE neon Pinebook.
+
+Package: neon-essentials-desktop
+Architecture: all
+Depends: ${misc:Depends}
+Recommends: plasma-desktop, neon-desktop, neon-settings-2
+Description: Profile of essential neon software for desktop profiles
+ Marks essential neon desktop packages essential.
diff --git a/debian/neon-essentials-desktop.install b/debian/neon-essentials-desktop.install
new file mode 100644
index 0000000..48d257d
--- /dev/null
+++ b/debian/neon-essentials-desktop.install
@@ -0,0 +1 @@
+essentials/50neon-essentials-desktop /etc/apt/apt.conf.d/
diff --git a/essentials/50neon-essentials-desktop b/essentials/50neon-essentials-desktop
new file mode 100644
index 0000000..0d23f53
--- /dev/null
+++ b/essentials/50neon-essentials-desktop
@@ -0,0 +1,26 @@
+# SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
+# SPDX-FileCopyrightText: 2021 Harald Sitter <sitter at kde.org>
+
+# This marks certainly packages as essential to the neon experience. Effectively
+# removing any of these makes the system no longer neon.
+# Removing any of these also breaks the UI to varying degrees, so we'll want
+# to make it really hard to do this by accident, hence we mark them essential.
+# This is implemented as a client-side marking because marking the actual
+# packages essential means apt will automatically install them REGARDLESS of
+# device type! e.g. mobile suddenly gets plasma-desktop installed.
+# Doing it this way allows us to install different essentials profiles based
+# on the intended formfactor.
+pkgCacheGen::ForceEssential {
+    "sddm";
+    "plasma-desktop";
+
+    "neon-desktop";
+    "neon-settings-2";
+    "neon-essentials-desktop";
+};
+
+# I could only think of one "core" package and that's plasma-workspace. The other core bits are
+# required by one of these anyway, so I've opted not to make a "core" essentials file with stuff
+# that every formfactor needs. Should we find ourselves with wanting many core packages (besides
+# plasma-workspace) then this should get refactored into a 49neon-essentials-core that is dependend
+# on by all other files (also needs testing that the list merges correctly).


More information about the Neon-commits mailing list