Marco Trevisan (Treviño) has proposed merging ~3v1n0/ubuntu/+source/gnome-session:ubuntu/master-fix-install into ~ubuntu-desktop/ubuntu/+source/gnome-session:ubuntu/master.
Requested reviews: Ubuntu Desktop (ubuntu-desktop) Related bugs: Bug #1787748 in gnome-session (Ubuntu): "ubuntu.session is trying to write '/usr/share/gnome-session/sessions/ubuntu.session', which is also in the gnome-session" https://bugs.launchpad.net/ubuntu/+source/gnome-session/+bug/1787748 For more details, see: https://code.launchpad.net/~3v1n0/ubuntu/+source/gnome-session/+git/gnome-session/+merge/353513 -- Your team Ubuntu Desktop is requested to review the proposed merge of ~3v1n0/ubuntu/+source/gnome-session:ubuntu/master-fix-install into ~ubuntu-desktop/ubuntu/+source/gnome-session:ubuntu/master.
diff --git a/debian/changelog b/debian/changelog index 432151e..e86ff6e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,36 @@ +gnome-session (3.29.90-1ubuntu2) UNRELEASED; urgency=medium + + * debian/gnome-session.install: + - Revert change that was wrongly merged from debian, causing + gnome-session and ubuntu-session to have the same files (LP: #1787748) + * debian/control: + - Set Breaks/Replaces on gnome-shell <=> ubuntu-settings for versions + <= 3.29.90-1ubuntu1 (LP: #1787748) + - Build-depends on meson (>= 0.47.0) as per dict usage + * debian/gnome-session.install: + - install all gnome-provided *.session files + * d/p/ubuntu/post_install-install-gnome.desktop-session-in-wayland-ses.patch: + - Do not install gnome.session in xsessions (as defaults to wayland) + * d/p/ubuntu/ubuntu-sessions.patch: + - Install session X and wayland .desktop files only in the relative-type + directories, and cleanup the meson code using a dict. + * debian/rules: + - Use dh_missing --fail-missing + * d/p/53_add_sessionmigration.patch: + - Use Gbp-Pq topic, moved to d/p/ubuntu/add_sessionmigration.patch + * d/p/95_dbus_request_shutdown.patch: + - Use Gbp-Pq topic, moved to d/p/ubuntu/dbus_request_shutdown.patch + * d/p/ignore_gsettings_region.patch: + - Use Gbp-Pq topic, moved to d/p/ubuntu/ignore_gsettings_region.patch + * d/p/103_kill_the_fail_whale.patch: + - Use Gbp-Pq topic, moved to d/p/ubuntu/kill_the_fail_whale.patch + * d/p/51_remove_session_saving_from_gui.patch: + - Use Gbp-Pq topic, moved to d/p/ubuntu/remove_session_saving_from_gui.patch + * d/p/22_support_autostart_delay.patch: + - Use Gbp-Pq topic, moved to d/p/ubuntu/support_autostart_delay.patch + + -- Marco Trevisan (Treviño) <ma...@ubuntu.com> Tue, 21 Aug 2018 16:11:31 +0200 + gnome-session (3.29.90-1ubuntu1) cosmic; urgency=medium * Merge with debian, remaining changes: diff --git a/debian/control b/debian/control index 9f1f0a0..dfc7921 100644 --- a/debian/control +++ b/debian/control @@ -56,8 +56,10 @@ Suggests: gnome-user-docs, # desktop-base, gnome-keyring Provides: x-session-manager -Breaks: gnome-session-wayland (<< 3.22.1) -Replaces: gnome-session-wayland (<< 3.22.1) +Breaks: gnome-session-wayland (<< 3.22.1), + ubuntu-session (<= 3.29.90-1ubuntu1), +Replaces: gnome-session-wayland (<< 3.22.1), + ubuntu-session (<= 3.29.90-1ubuntu1), Description: GNOME Session Manager - GNOME 3 session The GNOME Session Manager is in charge of starting the core components of the GNOME desktop, and applications that should be launched at @@ -105,10 +107,12 @@ Depends: ${misc:Depends}, Recommends: session-migration, python3, Provides: x-session-manager, -Breaks: unity (<< 7.5.0+17.10.20170619), +Breaks: gnome-session (<= 3.29.90-1ubuntu1), + unity (<< 7.5.0+17.10.20170619), unity-settings-daemon (<< 15.04.1+17.04.20170619), hud (<< 14.10+17.10.20170619), unity-gtk-module (<< 0.0.0+17.04.20170918), +Replaces: gnome-session (<= 3.29.90-1ubuntu1), Description: Ubuntu session with GNOME Shell This package contains the required components for running a GNOME 3 session with default Ubuntu configuration, based on the GNOME Shell. diff --git a/debian/control.in b/debian/control.in index 3b65c1d..756f405 100644 --- a/debian/control.in +++ b/debian/control.in @@ -25,7 +25,7 @@ Build-Depends: debhelper (>= 11.1.3), libgles2-mesa-dev, libxtst-dev, libxrender-dev, - meson (>= 0.43.0), + meson (>= 0.47.0), xmlto, xsltproc, xtrans-dev, @@ -52,8 +52,10 @@ Suggests: gnome-user-docs, # desktop-base, gnome-keyring Provides: x-session-manager -Breaks: gnome-session-wayland (<< 3.22.1) -Replaces: gnome-session-wayland (<< 3.22.1) +Breaks: gnome-session-wayland (<< 3.22.1), + ubuntu-session (<= 3.29.90-1ubuntu1), +Replaces: gnome-session-wayland (<< 3.22.1), + ubuntu-session (<= 3.29.90-1ubuntu1), Description: GNOME Session Manager - GNOME 3 session The GNOME Session Manager is in charge of starting the core components of the GNOME desktop, and applications that should be launched at @@ -101,10 +103,12 @@ Depends: ${misc:Depends}, Recommends: session-migration, python3, Provides: x-session-manager, -Breaks: unity (<< 7.5.0+17.10.20170619), +Breaks: gnome-session (<= 3.29.90-1ubuntu1), + unity (<< 7.5.0+17.10.20170619), unity-settings-daemon (<< 15.04.1+17.04.20170619), hud (<< 14.10+17.10.20170619), unity-gtk-module (<< 0.0.0+17.04.20170918), +Replaces: gnome-session (<= 3.29.90-1ubuntu1), Description: Ubuntu session with GNOME Shell This package contains the required components for running a GNOME 3 session with default Ubuntu configuration, based on the GNOME Shell. diff --git a/debian/gnome-session.install b/debian/gnome-session.install index 0f6143c..b33b6d8 100644 --- a/debian/gnome-session.install +++ b/debian/gnome-session.install @@ -1,4 +1,4 @@ usr/share/doc -usr/share/xsessions/*.desktop -usr/share/gnome-session/sessions/*.session -usr/share/wayland-sessions/*.desktop +usr/share/xsessions/gnome-xorg.desktop +usr/share/gnome-session/sessions/gnome*.session +usr/share/wayland-sessions/gnome.desktop diff --git a/debian/patches/revert_remove_gnome_session_properties.patch b/debian/patches/revert_remove_gnome_session_properties.patch index 8212cff..59616bf 100644 --- a/debian/patches/revert_remove_gnome_session_properties.patch +++ b/debian/patches/revert_remove_gnome_session_properties.patch @@ -5812,10 +5812,10 @@ index 0000000..497fb9d + </g> +</svg> diff --git a/data/meson.build b/data/meson.build -index 62cbb75..7f9f2ed 100644 +index ba0f654..cbf05fa 100644 --- a/data/meson.build +++ b/data/meson.build -@@ -162,7 +162,30 @@ if enable_session_selector +@@ -109,7 +109,30 @@ if enable_session_selector ) endif diff --git a/debian/patches/series b/debian/patches/series index f391d3e..d300786 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,9 +1,10 @@ debian/Revert-main-Remove-GNOME_DESKTOP_SESSION_ID-envvar.patch -22_support_autostart_delay.patch +ubuntu/support_autostart_delay.patch ubuntu/ubuntu-sessions.patch -51_remove_session_saving_from_gui.patch -53_add_sessionmigration.patch -95_dbus_request_shutdown.patch -103_kill_the_fail_whale.patch -ignore_gsettings_region.patch +ubuntu/post_install-install-gnome.desktop-session-in-wayland-ses.patch +ubuntu/remove_session_saving_from_gui.patch +ubuntu/add_sessionmigration.patch +ubuntu/dbus_request_shutdown.patch +ubuntu/kill_the_fail_whale.patch +ubuntu/ignore_gsettings_region.patch revert_remove_gnome_session_properties.patch diff --git a/debian/patches/53_add_sessionmigration.patch b/debian/patches/ubuntu/add_sessionmigration.patch index 9ef4735..1e64cdc 100644 --- a/debian/patches/53_add_sessionmigration.patch +++ b/debian/patches/ubuntu/add_sessionmigration.patch @@ -1,6 +1,6 @@ From: Ubuntu Developers <ubuntu-devel-disc...@lists.ubuntu.com> Date: Wed, 15 Aug 2018 17:13:26 +0200 -Subject: _add_sessionmigration +Subject: gsm-session-fill: Launch session migration =================================================================== --- diff --git a/debian/patches/95_dbus_request_shutdown.patch b/debian/patches/ubuntu/dbus_request_shutdown.patch index 9b26df8..9b26df8 100644 --- a/debian/patches/95_dbus_request_shutdown.patch +++ b/debian/patches/ubuntu/dbus_request_shutdown.patch diff --git a/debian/patches/ignore_gsettings_region.patch b/debian/patches/ubuntu/ignore_gsettings_region.patch index 8c037c1..8c037c1 100644 --- a/debian/patches/ignore_gsettings_region.patch +++ b/debian/patches/ubuntu/ignore_gsettings_region.patch diff --git a/debian/patches/103_kill_the_fail_whale.patch b/debian/patches/ubuntu/kill_the_fail_whale.patch index 5843d73..7bf08e5 100644 --- a/debian/patches/103_kill_the_fail_whale.patch +++ b/debian/patches/ubuntu/kill_the_fail_whale.patch @@ -1,6 +1,6 @@ From: Ubuntu Developers <ubuntu-devel-disc...@lists.ubuntu.com> Date: Wed, 15 Aug 2018 17:13:26 +0200 -Subject: _kill_the_fail_whale +Subject: kill the fail whale =================================================================== --- diff --git a/debian/patches/ubuntu/post_install-install-gnome.desktop-session-in-wayland-ses.patch b/debian/patches/ubuntu/post_install-install-gnome.desktop-session-in-wayland-ses.patch new file mode 100644 index 0000000..d58e740 --- /dev/null +++ b/debian/patches/ubuntu/post_install-install-gnome.desktop-session-in-wayland-ses.patch @@ -0,0 +1,38 @@ +From: =?utf-8?b?Ik1hcmNvIFRyZXZpc2FuIChUcmV2acOxbyki?= <m...@3v1n0.net> +Date: Tue, 21 Aug 2018 17:32:13 +0200 +Subject: post_install: install gnome.desktop session in wayland-sessions only + +In ubuntu we use a symlink from gnome-xorg.desktop to gnome.desktop, so +no need to install this for X sessions. + +Forwarded: Not needed +--- + data/meson.build | 2 +- + meson_post_install.py | 4 ---- + 2 files changed, 1 insertion(+), 5 deletions(-) + +diff --git a/data/meson.build b/data/meson.build +index d066fa7..ba0f654 100644 +--- a/data/meson.build ++++ b/data/meson.build +@@ -14,7 +14,7 @@ i18n.merge_file( + # join_paths(session_datadir, 'xsessions'), + # join_paths(session_datadir, 'wayland-sessions') + #] +- install_dir: join_paths(session_datadir, 'xsessions') ++ install_dir: join_paths(session_datadir, 'wayland-sessions') + ) + + ubuntu_sessions = { +diff --git a/meson_post_install.py b/meson_post_install.py +index e2e352c..e88375d 100644 +--- a/meson_post_install.py ++++ b/meson_post_install.py +@@ -20,7 +20,3 @@ if not os.environ.get('DESTDIR'): + dst_dir = os.path.join(install_root, 'wayland-sessions') + if not os.path.exists(dst_dir): + os.makedirs(dst_dir) +- +-src = os.path.join(install_root, 'xsessions', 'gnome.desktop') +-dst = os.path.join(dst_dir, 'gnome.desktop') +-shutil.copyfile(src, dst) diff --git a/debian/patches/51_remove_session_saving_from_gui.patch b/debian/patches/ubuntu/remove_session_saving_from_gui.patch index 8d63a07..c905870 100644 --- a/debian/patches/51_remove_session_saving_from_gui.patch +++ b/debian/patches/ubuntu/remove_session_saving_from_gui.patch @@ -1,6 +1,6 @@ From: Ubuntu Developers <ubuntu-devel-disc...@lists.ubuntu.com> Date: Wed, 15 Aug 2018 17:13:26 +0200 -Subject: _remove_session_saving_from_gui +Subject: Remove session saving from gui =================================================================== --- diff --git a/debian/patches/22_support_autostart_delay.patch b/debian/patches/ubuntu/support_autostart_delay.patch index 310df37..310df37 100644 --- a/debian/patches/22_support_autostart_delay.patch +++ b/debian/patches/ubuntu/support_autostart_delay.patch diff --git a/debian/patches/ubuntu/ubuntu-sessions.patch b/debian/patches/ubuntu/ubuntu-sessions.patch index f3ed3e2..42d2563 100644 --- a/debian/patches/ubuntu/ubuntu-sessions.patch +++ b/debian/patches/ubuntu/ubuntu-sessions.patch @@ -1,33 +1,27 @@ From: Ubuntu Developers <ubuntu-devel-disc...@lists.ubuntu.com> Date: Wed, 15 Aug 2018 17:13:26 +0200 -Subject: tweak the session system to make it for ubuntu. +Subject: sessions: Tweak the system to make it for ubuntu. The session contains: - ubuntu (gnome-shell with ubuntu tweaks) in ubuntu-session package - unity in unity-session package - gnome-shell in the main gnome-session package. - (TryExec enables to show them or not depends on the package installed) -Forwarded: Not needed -The session contains: - - ubuntu (gnome-shell with ubuntu tweaks) in ubuntu-session package - - unity in unity-session package - - gnome-shell in the main gnome-session package. + - ubuntu-communitheme-snap into ubuntu-session package (TryExec enables to show them or not depends on the package installed) Forwarded: Not needed --- - data/gnome.desktop.in | 4 +- - data/meson.build | 72 +++++++++++++++++++++++- - data/ubuntu-communitheme-snap-wayland.desktop.in | 7 +++ - data/ubuntu-communitheme-snap.desktop.in | 7 +++ - data/ubuntu-wayland.desktop.in | 7 +++ - data/ubuntu.desktop.in | 7 +++ - data/ubuntu.session.desktop.in.in | 3 + - data/unity.desktop.in | 7 +++ - data/unity.session.desktop.in.in | 4 ++ - meson_post_install.py | 7 +++ - po/POTFILES.in | 7 +++ - 11 files changed, 129 insertions(+), 3 deletions(-) + data/gnome.desktop.in | 4 +-- + data/meson.build | 41 +++++++++++++++++------- + data/ubuntu-communitheme-snap-wayland.desktop.in | 7 ++++ + data/ubuntu-communitheme-snap.desktop.in | 7 ++++ + data/ubuntu-wayland.desktop.in | 7 ++++ + data/ubuntu.desktop.in | 7 ++++ + data/ubuntu.session.desktop.in.in | 3 ++ + data/unity.desktop.in | 7 ++++ + data/unity.session.desktop.in.in | 4 +++ + po/POTFILES.in | 7 ++++ + 10 files changed, 80 insertions(+), 14 deletions(-) create mode 100644 data/ubuntu-communitheme-snap-wayland.desktop.in create mode 100644 data/ubuntu-communitheme-snap.desktop.in create mode 100644 data/ubuntu-wayland.desktop.in @@ -51,88 +45,51 @@ index 7b78e94..bfdc424 100644 Type=Application DesktopNames=GNOME diff --git a/data/meson.build b/data/meson.build -index 89af98f..62cbb75 100644 +index 89af98f..d066fa7 100644 --- a/data/meson.build +++ b/data/meson.build -@@ -17,6 +17,25 @@ i18n.merge_file( +@@ -17,21 +17,38 @@ i18n.merge_file( install_dir: join_paths(session_datadir, 'xsessions') ) -+desktop = 'ubuntu-wayland.desktop' -+ -+# FIXME: The same target can not be copied into two directories. -+# There is a workaround in meson_post_install.py until proper solution arises: -+# https://groups.google.com/forum/#!topic/mesonbuild/3iIoYPrN4P0 -+i18n.merge_file( -+ desktop, -+ type: 'desktop', -+ input: desktop + '.in', -+ output: desktop, -+ po_dir: po_dir, -+ install: true, -+ #install_dir: [ -+ # join_paths(session_datadir, 'xsessions'), -+ # join_paths(session_datadir, 'wayland-sessions') -+ #] -+ install_dir: join_paths(session_datadir, 'xsessions') -+) +-desktop = 'gnome-xorg.desktop' +- +-i18n.merge_file( +- desktop, +- type: 'desktop', +- input: desktop + '.in', +- output: desktop, +- po_dir: po_dir, +- install: true, +- install_dir: join_paths(session_datadir, 'xsessions') +-) ++ubuntu_sessions = { ++ 'xsessions': [ ++ 'gnome-xorg.desktop', ++ 'ubuntu.desktop', ++ 'ubuntu-communitheme-snap.desktop', ++ 'unity.desktop', ++ ], ++ 'wayland-sessions': [ ++ 'ubuntu-wayland.desktop', ++ 'ubuntu-communitheme-snap-wayland.desktop', ++ ], ++} + - desktop = 'gnome-xorg.desktop' - - i18n.merge_file( -@@ -29,9 +48,60 @@ i18n.merge_file( - install_dir: join_paths(session_datadir, 'xsessions') - ) ++foreach type, desktop_files : ubuntu_sessions ++ foreach desktop: desktop_files ++ i18n.merge_file( ++ desktop, ++ type: 'desktop', ++ input: desktop + '.in', ++ output: desktop, ++ po_dir: po_dir, ++ install: true, ++ install_dir: join_paths(session_datadir, type) ++ ) ++ endforeach ++endforeach -+desktop = 'ubuntu.desktop' -+ -+i18n.merge_file( -+ desktop, -+ type: 'desktop', -+ input: desktop + '.in', -+ output: desktop, -+ po_dir: po_dir, -+ install: true, -+ install_dir: join_paths(session_datadir, 'xsessions') -+) -+ -+desktop = 'ubuntu-communitheme-snap.desktop' -+ -+i18n.merge_file( -+ desktop, -+ type: 'desktop', -+ input: desktop + '.in', -+ output: desktop, -+ po_dir: po_dir, -+ install: true, -+ install_dir: join_paths(session_datadir, 'xsessions') -+) -+ -+desktop = 'ubuntu-communitheme-snap-wayland.desktop' -+ -+i18n.merge_file( -+ desktop, -+ type: 'desktop', -+ input: desktop + '.in', -+ output: desktop, -+ po_dir: po_dir, -+ install: true, -+ install_dir: join_paths(session_datadir, 'xsessions') -+) -+ -+ -+desktop = 'unity.desktop' -+ -+i18n.merge_file( -+ desktop, -+ type: 'desktop', -+ input: desktop + '.in', -+ output: desktop, -+ po_dir: po_dir, -+ install: true, -+ install_dir: join_paths(session_datadir, 'xsessions') -+) -+ sessions = [ 'gnome.session', - 'gnome-dummy.session' @@ -226,21 +183,6 @@ index 0000000..615b492 +Name=Unity +RequiredComponents=unity-settings-daemon; +DesktopName=Unity:Unity7:ubuntu -diff --git a/meson_post_install.py b/meson_post_install.py -index e2e352c..b8a8b4f 100644 ---- a/meson_post_install.py -+++ b/meson_post_install.py -@@ -24,3 +24,10 @@ if not os.path.exists(dst_dir): - src = os.path.join(install_root, 'xsessions', 'gnome.desktop') - dst = os.path.join(dst_dir, 'gnome.desktop') - shutil.copyfile(src, dst) -+ -+src = os.path.join(install_root, 'xsessions', 'ubuntu-wayland.desktop') -+dst = os.path.join(dst_dir, 'ubuntu-wayland.desktop') -+shutil.copyfile(src, dst) -+src = os.path.join(install_root, 'xsessions', 'ubuntu-communitheme-snap-wayland.desktop') -+dst = os.path.join(dst_dir, 'ubuntu-communitheme-snap-wayland.desktop') -+shutil.copyfile(src, dst) diff --git a/po/POTFILES.in b/po/POTFILES.in index 63faf7d..c20c662 100644 --- a/po/POTFILES.in
-- ubuntu-desktop mailing list ubuntu-desktop@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop