Compare commits

...

15 Commits

53
debian/changelog vendored

@ -1,3 +1,56 @@
lxqt-session (1.4.0-0ubuntu3) noble; urgency=medium
* Copy over GTK 3 settings by default (LP: #2047705).
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 29 Dec 2023 12:36:24 -0600
lxqt-session (1.4.0-0ubuntu2) noble; urgency=medium
* Add an upstream patch polishing the autostart UX.
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 22 Dec 2023 16:32:05 -0600
lxqt-session (1.4.0-0ubuntu1) noble; urgency=medium
* New upstream release.
* Bump build dependencies.
* Update copyright years.
* Wraaaaaaaaaaaaaaaaaaaaaaaaaaaap.
* Explicitly depend on dbus-bin, since dbus-update-activation-
environment is now directly called.
-- Simon Quigley <tsimonq2@ubuntu.com> Sun, 12 Nov 2023 19:06:27 -0600
lxqt-session (1.3.0-0ubuntu4) mantic; urgency=medium
* d/control: Fix the comments added in -0ubuntu3 so that dpkg can
process them properly. (Hotfix for a FTBFS bug)
-- Thomas Ward <teward@ubuntu.com> Sat, 23 Sep 2023 19:37:40 -0400
lxqt-session (1.3.0-0ubuntu3) mantic; urgency=medium
* Since the LXQt handler is limited in the portals it supports, add KDE and
GTK as fallbacks. The GTK fallback needs to be removed once KDE's is
better.
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 22 Sep 2023 14:22:41 -0500
lxqt-session (1.3.0-0ubuntu2) mantic; urgency=high
* Add /usr/share/xdg-desktop-portal/lxqt-portals.conf, which makes XDG
portalling happy (LP: #2036098).
-- Simon Quigley <tsimonq2@ubuntu.com> Wed, 20 Sep 2023 22:45:49 -0500
lxqt-session (1.3.0-0ubuntu1) mantic; urgency=medium
* New upstream release.
* Bump build dependencies.
* Remove reverse-applicable patch.
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 11 Aug 2023 09:51:27 -0500
lxqt-session (1.2.0-3ubuntu2) lunar; urgency=medium
* Lubuntuify the Maintainer field.

11
debian/control vendored

@ -8,13 +8,13 @@ Section: x11
Priority: optional
Build-Depends: debhelper-compat (= 13),
libkf5windowsystem-dev,
liblxqt1-dev (>= 1.2.0~),
liblxqt1-dev (>= 1.4.0),
libproc2-dev,
libqt5svg5-dev,
libqt5x11extras5-dev,
libudev-dev [linux-any],
libx11-dev,
qtxdg-tools (>= 3.10.0~),
qtxdg-tools (>= 3.12.0),
xdg-user-dirs
Standards-Version: 4.6.2
Vcs-Browser: https://git.lubuntu.me/Lubuntu/lxqt-session-packaging
@ -31,7 +31,8 @@ Depends: lxqt-qtplugin,
x11-xkb-utils,
${misc:Depends},
${shlibs:Depends}
Recommends: lxqt-config,
Recommends: dbus-bin,
lxqt-config,
lxqt-notificationd,
lxqt-policykit,
lxqt-powermanagement,
@ -40,6 +41,10 @@ Recommends: lxqt-config,
pcmanfm-qt,
qlipper,
qps [linux-any],
# xdg-desktop-portal-gtk should be removed soon in the future.
xdg-desktop-portal-gtk,
xdg-desktop-portal-kde,
xdg-desktop-portal-lxqt,
xscreensaver | gnome-screensaver | light-locker | i3lock | suckless-tools
Provides: x-session-manager
Description: session manager component for LXQt

2
debian/copyright vendored

@ -3,7 +3,7 @@ Upstream-Name: lxqt-session
Source: https://github.com/lxqt/lxqt-session
Files: *
Copyright: 2010-2022 LXQt team
Copyright: 2010-2023 LXQt team
2015-2021 Palo Kisa <palo.kisa@gmail.com>
2010-2018 Petr Vanek <petr@scribus.info>
2010-2016 Paulo Lieuthier <paulolieuthier@gmail.com>

@ -0,0 +1,2 @@
[preferred]
default=lxqt;kde;gtk;

@ -1,3 +1,4 @@
debian/lxqt-portals.conf /usr/share/xdg-desktop-portal
etc/xdg/autostart/lxqt-xscreensaver-autostart.desktop
usr/bin/lxqt-config-session
usr/bin/lxqt-leave

@ -1,63 +0,0 @@
From: Bernhard Rosenkraenzer <bero@lindev.ch>
Date: Sat, 17 Dec 2022 17:34:17 +0800
Subject: Use procps-ng 4.0.0
---
CMakeLists.txt | 2 +-
lxqt-session/src/procreaper.cpp | 19 ++++++++++++-------
2 files changed, 13 insertions(+), 8 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a3c5e0d..45992a0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -35,7 +35,7 @@ find_package(X11 REQUIRED)
message(STATUS "Building with Qt${Qt5Core_VERSION}")
find_package(PkgConfig REQUIRED)
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
- pkg_search_module(PROCPS REQUIRED libprocps)
+ pkg_search_module(PROCPS REQUIRED libproc2)
endif()
# Please don't move, must be after lxqt
diff --git a/lxqt-session/src/procreaper.cpp b/lxqt-session/src/procreaper.cpp
index 2acd030..495267e 100644
--- a/lxqt-session/src/procreaper.cpp
+++ b/lxqt-session/src/procreaper.cpp
@@ -29,7 +29,7 @@
#include "log.h"
#if defined(Q_OS_LINUX)
#include <sys/prctl.h>
-#include <proc/readproc.h>
+#include <libproc2/pids.h>
#elif defined(Q_OS_FREEBSD)
#include <sys/procctl.h>
#include <libutil.h>
@@ -109,16 +109,21 @@ void ProcReaper::stop(const std::set<int64_t> & excludedPids)
const pid_t my_pid = ::getpid();
std::vector<pid_t> children;
#if defined(Q_OS_LINUX)
- PROCTAB * proc_dir = ::openproc(PROC_FILLSTAT);
- while (proc_t * proc = ::readproc(proc_dir, nullptr))
+ struct pids_info *info = NULL;
+ enum pids_item items[] = { PIDS_ID_PPID, PIDS_ID_TGID };
+ enum rel_items { rel_ppid, rel_tgid };
+ struct pids_stack *stack;
+ procps_pids_new(&info, items, 2);
+ while ((stack = procps_pids_get(info, PIDS_FETCH_TASKS_ONLY)))
{
- if (proc->ppid == my_pid)
+ const int ppid = PIDS_VAL(rel_ppid, s_int, stack, info);
+ if (ppid == my_pid)
{
- children.push_back(proc->tgid);
+ const int tgid = PIDS_VAL(rel_tgid, s_int, stack, info);
+ children.push_back(tgid);
}
- ::freeproc(proc);
}
- ::closeproc(proc_dir);
+ procps_pids_unref(&info);
#elif defined(Q_OS_FREEBSD)
int cnt = 0;
if (kinfo_proc *proc_info = kinfo_getallproc(&cnt))

@ -0,0 +1,55 @@
Description: lxqt-config-session/autostart: More strict user inputs
Makes name and command mandatory when adding or editing a autostart an
application. Check for already existing files when editing.
.
TODO: Add and Edit functions are almost indentical. Candidates to some
refactoring.
Author: Luís Pereira <luis.artur.pereira@gmail.com>
Origin: upstream
Bug: https://github.com/lxqt/lxqt-session/issues/486
Applied-Upstream: 35acc5e7fe64ab78616968a5b73b150fdf2f002a
Last-Update: 2023-12-22
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/lxqt-config-session/autostartpage.cpp
+++ b/lxqt-config-session/autostartpage.cpp
@@ -133,6 +133,11 @@ void AutoStartPage::addButton_clicked()
while (!success && edit.exec() == QDialog::Accepted)
{
QModelIndex index = ui->autoStartView->selectionModel()->currentIndex();
+ if (edit.name().isEmpty() || edit.command().isEmpty() )
+ {
+ QMessageBox::critical(this, tr("Error"), tr("Please provide Name and Command"));
+ continue;
+ }
XdgDesktopFile file(XdgDesktopFile::ApplicationType, edit.name(), edit.command());
if (edit.needTray())
file.setValue(QL1S("X-LXQt-Need-Tray"), true);
@@ -148,8 +153,14 @@ void AutoStartPage::editButton_clicked()
QModelIndex index = ui->autoStartView->selectionModel()->currentIndex();
XdgDesktopFile file = mXdgAutoStartModel->desktopFile(index);
AutoStartEdit edit(file.name(), file.value(QL1S("Exec")).toString(), file.contains(QL1S("X-LXQt-Need-Tray")));
- if (edit.exec() == QDialog::Accepted)
+ bool success = false;
+ while (!success && edit.exec() == QDialog::Accepted)
{
+ if (edit.name().isEmpty() || edit.command().isEmpty() )
+ {
+ QMessageBox::critical(this, tr("Error"), tr("Please provide Name and Command"));
+ continue;
+ }
file.setLocalizedValue(QL1S("Name"), edit.name());
file.setValue(QL1S("Exec"), edit.command());
if (edit.needTray())
@@ -157,7 +168,10 @@ void AutoStartPage::editButton_clicked()
else
file.removeEntry(QL1S("X-LXQt-Need-Tray"));
- mXdgAutoStartModel->setEntry(index, file, true);
+ if (mXdgAutoStartModel->setEntry(index, file, true))
+ success = true;
+ else
+ QMessageBox::critical(this, tr("Error"), tr("File '%1' already exists!").arg(file.fileName()));
}
}

@ -0,0 +1,34 @@
Description: Copy over GTK 3 settings from XDG_CONFIG_DIRS
This is a workaround for GTK 3 settings not being applied by default from XDG.
Ideally, all desktop environments would do this, and it would be fixed in GTK itself.
Author: Simon Quigley <tsimonq2@ubuntu.com>
Origin: vendor
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/gtk+3.0/+bug/2047705
Forwarded: no
Last-Update: 2023-12-29
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/startlxqt.in
+++ b/startlxqt.in
@@ -32,6 +32,21 @@ else
fi
done
fi
+# Handle GTK 3 configuration files
+echo "$XDG_CONFIG_DIRS" | tr ':' '\n' | while read -r dir; do
+ dir_path="$dir/gtk-3.0/"
+ if [ -d "$dir_path" ]; then
+ mkdir -p "$HOME/.config/gtk-3.0"
+ for file in "$dir_path"*; do
+ if [ -f "$file" ]; then
+ target_file="$HOME/.config/gtk-3.0/$(basename "$file")"
+ if [ ! -f "$target_file" ]; then
+ cp "$file" "$target_file"
+ fi
+ fi
+ done
+ fi
+done
if [ -z "$XDG_CACHE_HOME" ]; then
export XDG_CACHE_HOME="$HOME/.cache"

@ -1,2 +1,3 @@
ensure-necessary-paths-are-pulled-from.patch
0001-Use-procps-ng-4.0.0.patch
autostart-ux-polish.patch
gtk-3-configuration-copy.patch

Loading…
Cancel
Save