Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package cosmic-session for openSUSE:Factory 
checked in at 2025-12-22 22:50:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cosmic-session (Old)
 and      /work/SRC/openSUSE:Factory/.cosmic-session.new.1928 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cosmic-session"

Mon Dec 22 22:50:55 2025 rev:8 rq:1324082 version:1.0.0+0

Changes:
--------
--- /work/SRC/openSUSE:Factory/cosmic-session/cosmic-session.changes    
2025-10-13 15:35:49.758459910 +0200
+++ /work/SRC/openSUSE:Factory/.cosmic-session.new.1928/cosmic-session.changes  
2025-12-22 22:54:21.089664978 +0100
@@ -1,0 +2,31 @@
+Thu Dec 11 18:16:40 UTC 2025 - Richard Rahl <[email protected]>
+
+- Update to version 1.0.0+0:
+  * [i18n] Swedish translation of desktop file
+
+-------------------------------------------------------------------
+Sat Nov 15 20:23:43 UTC 2025 - Richard Rahl <[email protected]>
+
+- Update to version 1.0.0~beta6+0:
+  * no changes since last release
+
+-------------------------------------------------------------------
+Mon Nov 10 16:06:07 UTC 2025 - Richard Rahl <[email protected]>
+
+- Update to version 1.0.0~beta5+0:
+  * Don't create privileged sockets
+
+-------------------------------------------------------------------
+Thu Oct 23 18:06:55 UTC 2025 - Richard Rahl <[email protected]>
+
+- Update to version 1.0.0~beta3+0:
+  * no changes since last release
+
+-------------------------------------------------------------------
+Sun Oct 19 15:01:25 UTC 2025 - Richard Rahl <[email protected]>
+
+- Update to version 1.0.0~beta2+1:
+  * Do not start `xdg-desktop-portal-cosmic`; so socket activation can
+- remove leap-fix-justfile.patch
+
+-------------------------------------------------------------------

Old:
----
  cosmic-session-1.0.0~beta1.1+0.obscpio
  leap-fix-justfile.patch

New:
----
  cosmic-session-1.0.0+0.obscpio

----------(Old B)----------
  Old:  * Do not start `xdg-desktop-portal-cosmic`; so socket activation can
- remove leap-fix-justfile.patch
----------(Old E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cosmic-session.spec ++++++
--- /var/tmp/diff_new_pack.FnXeDh/_old  2025-12-22 22:54:23.897780788 +0100
+++ /var/tmp/diff_new_pack.FnXeDh/_new  2025-12-22 22:54:23.901780953 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           cosmic-session
-Version:        1.0.0~beta1.1+0
+Version:        1.0.0+0
 Release:        0
 Summary:        Session manager for the COSMIC desktop environment
 License:        GPL-3.0-only
@@ -25,7 +25,6 @@
 Source0:        %{name}-%{version}.tar.zst
 Source1:        vendor.tar.zst
 Source2:        %{name}.dconf
-Patch0:         leap-fix-justfile.patch
 BuildRequires:  cargo-packaging
 BuildRequires:  dconf
 BuildRequires:  just
@@ -35,10 +34,7 @@
 %{summary}.
 
 %prep
-%autosetup -N -a1
-%if 0%{?suse_version} < 1600
-%patch -P0 -p1
-%endif
+%autosetup -a1
 
 %build
 just build

++++++ _service ++++++
--- /var/tmp/diff_new_pack.FnXeDh/_old  2025-12-22 22:54:23.933782272 +0100
+++ /var/tmp/diff_new_pack.FnXeDh/_new  2025-12-22 22:54:23.937782437 +0100
@@ -5,7 +5,7 @@
     <param name="scm">git</param>
     <param name="revision">master</param>
     <param name="versionrewrite-pattern">epoch-(.*)\+0</param>
-    <param name="versionformat">1.0.0~beta1.1+@TAG_OFFSET@</param>
+    <param name="versionformat">1.0.0+@TAG_OFFSET@</param>
     <param name="versionrewrite-replacement">\1</param>
     <param name="package-meta">yes</param>
     <param name="filename">cosmic-session</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.FnXeDh/_old  2025-12-22 22:54:23.961783427 +0100
+++ /var/tmp/diff_new_pack.FnXeDh/_new  2025-12-22 22:54:23.961783427 +0100
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://github.com/pop-os/cosmic-session.git</param>
-              <param 
name="changesrevision">379ce30715f637075879feda784edc89231792cf</param></service></servicedata>
+              <param 
name="changesrevision">f4093070be2813787fbfd1a1ff43b213c1396343</param></service></servicedata>
 (No newline at EOF)
 

++++++ cosmic-session-1.0.0~beta1.1+0.obscpio -> cosmic-session-1.0.0+0.obscpio 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cosmic-session-1.0.0~beta1.1+0/.git/ORIG_HEAD 
new/cosmic-session-1.0.0+0/.git/ORIG_HEAD
--- old/cosmic-session-1.0.0~beta1.1+0/.git/ORIG_HEAD   2025-09-19 
19:26:54.000000000 +0200
+++ new/cosmic-session-1.0.0+0/.git/ORIG_HEAD   2025-12-09 17:21:00.000000000 
+0100
@@ -1 +1 @@
-379ce30715f637075879feda784edc89231792cf
+f4093070be2813787fbfd1a1ff43b213c1396343
Binary files old/cosmic-session-1.0.0~beta1.1+0/.git/index and 
new/cosmic-session-1.0.0+0/.git/index differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cosmic-session-1.0.0~beta1.1+0/.git/logs/HEAD 
new/cosmic-session-1.0.0+0/.git/logs/HEAD
--- old/cosmic-session-1.0.0~beta1.1+0/.git/logs/HEAD   2025-09-19 
19:26:54.000000000 +0200
+++ new/cosmic-session-1.0.0+0/.git/logs/HEAD   2025-12-09 17:21:00.000000000 
+0100
@@ -1,3 +1,3 @@
-0000000000000000000000000000000000000000 
379ce30715f637075879feda784edc89231792cf mkd <mkd@medora.(none)> 1759181641 
+0300     clone: from https://github.com/pop-os/cosmic-session.git
-379ce30715f637075879feda784edc89231792cf 
379ce30715f637075879feda784edc89231792cf mkd <mkd@medora.(none)> 1759181641 
+0300     checkout: moving from master to master
-379ce30715f637075879feda784edc89231792cf 
379ce30715f637075879feda784edc89231792cf mkd <mkd@medora.(none)> 1759181641 
+0300     reset: moving to master
+0000000000000000000000000000000000000000 
f4093070be2813787fbfd1a1ff43b213c1396343 user <[email protected]> 
1765477000 +0000       clone: from https://github.com/pop-os/cosmic-session.git
+f4093070be2813787fbfd1a1ff43b213c1396343 
f4093070be2813787fbfd1a1ff43b213c1396343 user <[email protected]> 
1765477000 +0000       checkout: moving from master to master
+f4093070be2813787fbfd1a1ff43b213c1396343 
f4093070be2813787fbfd1a1ff43b213c1396343 user <[email protected]> 
1765477000 +0000       reset: moving to master
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cosmic-session-1.0.0~beta1.1+0/.git/logs/refs/heads/master 
new/cosmic-session-1.0.0+0/.git/logs/refs/heads/master
--- old/cosmic-session-1.0.0~beta1.1+0/.git/logs/refs/heads/master      
2025-09-19 19:26:54.000000000 +0200
+++ new/cosmic-session-1.0.0+0/.git/logs/refs/heads/master      2025-12-09 
17:21:00.000000000 +0100
@@ -1 +1 @@
-0000000000000000000000000000000000000000 
379ce30715f637075879feda784edc89231792cf mkd <mkd@medora.(none)> 1759181641 
+0300     clone: from https://github.com/pop-os/cosmic-session.git
+0000000000000000000000000000000000000000 
f4093070be2813787fbfd1a1ff43b213c1396343 user <[email protected]> 
1765477000 +0000       clone: from https://github.com/pop-os/cosmic-session.git
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cosmic-session-1.0.0~beta1.1+0/.git/logs/refs/remotes/origin/HEAD 
new/cosmic-session-1.0.0+0/.git/logs/refs/remotes/origin/HEAD
--- old/cosmic-session-1.0.0~beta1.1+0/.git/logs/refs/remotes/origin/HEAD       
2025-09-19 19:26:54.000000000 +0200
+++ new/cosmic-session-1.0.0+0/.git/logs/refs/remotes/origin/HEAD       
2025-12-09 17:21:00.000000000 +0100
@@ -1 +1 @@
-0000000000000000000000000000000000000000 
379ce30715f637075879feda784edc89231792cf mkd <mkd@medora.(none)> 1759181641 
+0300     clone: from https://github.com/pop-os/cosmic-session.git
+0000000000000000000000000000000000000000 
f4093070be2813787fbfd1a1ff43b213c1396343 user <[email protected]> 
1765477000 +0000       clone: from https://github.com/pop-os/cosmic-session.git
Binary files 
old/cosmic-session-1.0.0~beta1.1+0/.git/objects/pack/pack-c834ab65ce5b745939e22a8688c6bf9a739b5b34.idx
 and 
new/cosmic-session-1.0.0+0/.git/objects/pack/pack-c834ab65ce5b745939e22a8688c6bf9a739b5b34.idx
 differ
Binary files 
old/cosmic-session-1.0.0~beta1.1+0/.git/objects/pack/pack-c834ab65ce5b745939e22a8688c6bf9a739b5b34.pack
 and 
new/cosmic-session-1.0.0+0/.git/objects/pack/pack-c834ab65ce5b745939e22a8688c6bf9a739b5b34.pack
 differ
Binary files 
old/cosmic-session-1.0.0~beta1.1+0/.git/objects/pack/pack-c834ab65ce5b745939e22a8688c6bf9a739b5b34.rev
 and 
new/cosmic-session-1.0.0+0/.git/objects/pack/pack-c834ab65ce5b745939e22a8688c6bf9a739b5b34.rev
 differ
Binary files 
old/cosmic-session-1.0.0~beta1.1+0/.git/objects/pack/pack-f373840504aed2d930cdb84249601b52c0e3f9ca.idx
 and 
new/cosmic-session-1.0.0+0/.git/objects/pack/pack-f373840504aed2d930cdb84249601b52c0e3f9ca.idx
 differ
Binary files 
old/cosmic-session-1.0.0~beta1.1+0/.git/objects/pack/pack-f373840504aed2d930cdb84249601b52c0e3f9ca.pack
 and 
new/cosmic-session-1.0.0+0/.git/objects/pack/pack-f373840504aed2d930cdb84249601b52c0e3f9ca.pack
 differ
Binary files 
old/cosmic-session-1.0.0~beta1.1+0/.git/objects/pack/pack-f373840504aed2d930cdb84249601b52c0e3f9ca.rev
 and 
new/cosmic-session-1.0.0+0/.git/objects/pack/pack-f373840504aed2d930cdb84249601b52c0e3f9ca.rev
 differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cosmic-session-1.0.0~beta1.1+0/.git/packed-refs 
new/cosmic-session-1.0.0+0/.git/packed-refs
--- old/cosmic-session-1.0.0~beta1.1+0/.git/packed-refs 2025-09-19 
19:26:54.000000000 +0200
+++ new/cosmic-session-1.0.0+0/.git/packed-refs 2025-12-09 17:21:00.000000000 
+0100
@@ -1,9 +1,11 @@
 # pack-refs with: peeled fully-peeled sorted 
 33cc64e9ddf53dcb34277cf17b4a6dea65aae4d6 
refs/remotes/origin/comp-output-redirect_noble
+0388e386288c33d727240609d0fc4efe1a2c7bab refs/remotes/origin/concurrent
 686e50c2fabaa5280a3f8932b1d0ae041643912f refs/remotes/origin/git-f0x-2024
 2136252c439dd50afc440cdb9b227b976d052950 refs/remotes/origin/inhibit-poweroff
 378ef37fc486b1c37ff0c9826e4d407832a9152a refs/remotes/origin/log-cleanup
-379ce30715f637075879feda784edc89231792cf refs/remotes/origin/master
+f4093070be2813787fbfd1a1ff43b213c1396343 refs/remotes/origin/master
+f4093070be2813787fbfd1a1ff43b213c1396343 refs/tags/epoch-1.0.0
 c3de3d24dd200d5f8a19a26de56590472f461574 refs/tags/epoch-1.0.0-alpha.1
 d06f94a8a01c47b01e0b490c98e0f6d7242ceadd refs/tags/epoch-1.0.0-alpha.2
 5a0df6afb6c9c5e9c29e33a756bf7e600c3d0264 refs/tags/epoch-1.0.0-alpha.3
@@ -14,3 +16,11 @@
 80209d5aadcfc05803eaa5b5099a5db1550d3fb1 refs/tags/epoch-1.0.0-alpha.7
 379ce30715f637075879feda784edc89231792cf refs/tags/epoch-1.0.0-beta.1
 379ce30715f637075879feda784edc89231792cf refs/tags/epoch-1.0.0-beta.1.1
+379ce30715f637075879feda784edc89231792cf refs/tags/epoch-1.0.0-beta.2
+d8ec361e3ccfc9a02bffc893ab0c08c204a275f2 refs/tags/epoch-1.0.0-beta.3
+d8ec361e3ccfc9a02bffc893ab0c08c204a275f2 refs/tags/epoch-1.0.0-beta.4
+472db4233083e8c6dabc24b0589183d0fd4e2b61 refs/tags/epoch-1.0.0-beta.5
+472db4233083e8c6dabc24b0589183d0fd4e2b61 refs/tags/epoch-1.0.0-beta.6
+472db4233083e8c6dabc24b0589183d0fd4e2b61 refs/tags/epoch-1.0.0-beta.7
+472db4233083e8c6dabc24b0589183d0fd4e2b61 refs/tags/epoch-1.0.0-beta.8
+472db4233083e8c6dabc24b0589183d0fd4e2b61 refs/tags/epoch-1.0.0-beta.9
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/cosmic-session-1.0.0~beta1.1+0/.git/refs/heads/master 
new/cosmic-session-1.0.0+0/.git/refs/heads/master
--- old/cosmic-session-1.0.0~beta1.1+0/.git/refs/heads/master   2025-09-19 
19:26:54.000000000 +0200
+++ new/cosmic-session-1.0.0+0/.git/refs/heads/master   2025-12-09 
17:21:00.000000000 +0100
@@ -1 +1 @@
-379ce30715f637075879feda784edc89231792cf
+f4093070be2813787fbfd1a1ff43b213c1396343
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cosmic-session-1.0.0~beta1.1+0/Justfile 
new/cosmic-session-1.0.0+0/Justfile
--- old/cosmic-session-1.0.0~beta1.1+0/Justfile 2025-09-19 19:26:54.000000000 
+0200
+++ new/cosmic-session-1.0.0+0/Justfile 2025-12-09 17:21:00.000000000 +0100
@@ -9,7 +9,6 @@
 vendor_args := if vendor == '1' { '--frozen --offline' } else { '' }
 debug_args := if debug == '1' { '' } else { '--release' }
 cargo_args := vendor_args + ' ' + debug_args
-xdp_cosmic := '/usr/libexec/xdg-desktop-portal-cosmic'
 orca := '/usr/bin/orca'
 cosmic_dconf_profile := prefix + '/share/dconf/profile/cosmic'
 
@@ -21,7 +20,7 @@
 all: _extract_vendor build
 
 build:
-        XDP_COSMIC={{xdp_cosmic}} ORCA={{orca}} cargo build {{cargo_args}}
+        ORCA={{orca}} cargo build {{cargo_args}}
 
 # Installs files into the system
 install:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cosmic-session-1.0.0~beta1.1+0/data/cosmic.desktop 
new/cosmic-session-1.0.0+0/data/cosmic.desktop
--- old/cosmic-session-1.0.0~beta1.1+0/data/cosmic.desktop      2025-09-19 
19:26:54.000000000 +0200
+++ new/cosmic-session-1.0.0+0/data/cosmic.desktop      2025-12-09 
17:21:00.000000000 +0100
@@ -1,6 +1,7 @@
 [Desktop Entry]
 Name=COSMIC
 Comment=This session logs you into the COSMIC desktop
+Comment[sv]=Denna session loggar in dig till skrivbordsmiljön COSMIC
 Exec=/usr/bin/start-cosmic
 Type=Application
 DesktopNames=COSMIC
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cosmic-session-1.0.0~beta1.1+0/src/comp.rs 
new/cosmic-session-1.0.0+0/src/comp.rs
--- old/cosmic-session-1.0.0~beta1.1+0/src/comp.rs      2025-09-19 
19:26:54.000000000 +0200
+++ new/cosmic-session-1.0.0+0/src/comp.rs      2025-12-09 17:21:00.000000000 
+0100
@@ -1,15 +1,11 @@
 // SPDX-License-Identifier: GPL-3.0-only
 use color_eyre::eyre::{Result, WrapErr};
 use launch_pad::{ProcessManager, process::Process};
-use sendfd::SendWithFd;
 use serde::{Deserialize, Serialize};
 use std::{collections::HashMap, os::unix::prelude::*};
 use tokio::{
-       io::{AsyncReadExt, AsyncWriteExt},
-       net::{
-               UnixStream,
-               unix::{OwnedReadHalf, OwnedWriteHalf},
-       },
+       io::AsyncReadExt,
+       net::{UnixStream, unix::OwnedReadHalf},
        sync::{mpsc, oneshot},
        task::JoinHandle,
 };
@@ -21,7 +17,6 @@
 #[serde(rename_all = "snake_case", tag = "message")]
 pub enum Message {
        SetEnv { variables: HashMap<String, String> },
-       NewPrivilegedClient { count: usize },
 }
 
 // Cancellation safe!
@@ -40,9 +35,6 @@
                                env_tx.send(variables).unwrap();
                        }
                }
-               Ok(Message::NewPrivilegedClient { .. }) => {
-                       unreachable!("NewPrivilegedClient should not be sent TO 
the session!");
-               }
                Err(_) => {
                        warn!(
                                "Unknown session socket message, are you using 
incompatible cosmic-session and \
@@ -101,82 +93,11 @@
        }
 }
 
-pub fn create_privileged_socket(
-       sockets: &mut Vec<UnixStream>,
-       env_vars: &[(String, String)],
-) -> Result<(Vec<(String, String)>, OwnedFd)> {
-       // Create a new pair of unnamed Unix sockets
-       let (comp_socket, client_socket) =
-               UnixStream::pair().wrap_err("failed to create socket pair")?;
-       // Push one socket to the list of sockets we were passed
-       sockets.push(comp_socket);
-       // Turn the other socket into a non-blocking fd, which we can pass to 
the child
-       // process
-       let client_fd = {
-               let std_stream = client_socket
-                       .into_std()
-                       .wrap_err("failed to convert client socket to std 
socket")?;
-               std_stream
-                       .set_nonblocking(true)
-                       .wrap_err("failed to mark client socket as 
non-blocking")?;
-               OwnedFd::from(std_stream)
-       };
-       let mut env_vars = env_vars.to_vec();
-       env_vars.push(("WAYLAND_SOCKET".into(), 
client_fd.as_raw_fd().to_string()));
-       Ok((env_vars, client_fd))
-}
-
-async fn send_fd(session_tx: &mut OwnedWriteHalf, stream: Vec<UnixStream>) -> 
Result<()> {
-       // Turn our list of Unix streams into non-blocking file descriptors.
-       let fds = stream
-               .into_iter()
-               .map(|stream| {
-                       let std_stream = stream
-                               .into_std()
-                               .wrap_err("failed to convert stream to std 
stream")?;
-                       std_stream
-                               .set_nonblocking(false)
-                               .wrap_err("failed to set stream as blocking")?;
-                       Ok(OwnedFd::from(std_stream))
-               })
-               .collect::<Result<Vec<_>>>()
-               .wrap_err("failed to convert streams to file descriptors")?;
-       // Create a NewPrivilegedClient message, with a count of how many file
-       // descriptors we are about to send.
-       let json = serde_json::to_string(&Message::NewPrivilegedClient { count: 
fds.len() })
-               .wrap_err("failed to encode json")?;
-       // Send the length of our NewPrivilegedClient message.
-       session_tx
-               .write_all(&(json.len() as u16).to_le_bytes())
-               .await
-               .wrap_err("failed to write length")?;
-       // Send our NewPrivilegedClient message, in JSON form.
-       session_tx
-               .write_all(json.as_bytes())
-               .await
-               .wrap_err("failed to write json")?;
-       // Wait 100 us for the session to acknowledge our message.
-       tokio::time::sleep(std::time::Duration::from_micros(100)).await;
-       // Send our file descriptors.
-       let fd: &UnixStream = session_tx.as_ref();
-       info!("sending {} fds", fds.len());
-
-       fd.send_with_fd(
-               &[0],
-               &fds.into_iter()
-                       .map(|fd| fd.into_raw_fd())
-                       .collect::<Vec<_>>(),
-       )
-       .wrap_err("failed to send fd")?;
-       Ok(())
-}
-
 pub fn run_compositor(
        process_manager: &ProcessManager,
        exec: String,
        args: Vec<String>,
        _token: CancellationToken,
-       mut socket_rx: mpsc::UnboundedReceiver<Vec<UnixStream>>,
        env_tx: oneshot::Sender<HashMap<String, String>>,
        session_dbus_tx: mpsc::Sender<SessionRequest>,
 ) -> Result<JoinHandle<Result<()>>> {
@@ -184,7 +105,7 @@
        // Create a pair of unix sockets - one for us (session),
        // one for the compositor (comp)
        let (session, comp) = UnixStream::pair().wrap_err("failed to create 
pair of unix sockets")?;
-       let (mut session_rx, mut session_tx) = session.into_split();
+       let (mut session_rx, _session_tx) = session.into_split();
        // Convert our compositor socket to a non-blocking file descriptor.
        let comp = {
                let std_stream = comp
@@ -242,12 +163,6 @@
                                        error!("failed to receive IPC: {:?}", 
err);
                                        break;
                                },
-                               // Send any file descriptors we need to the 
compositor.
-                               Some(socket) = socket_rx.recv() => {
-                                       send_fd(&mut session_tx, socket)
-                                               .await
-                                               .wrap_err("failed to send file 
descriptor to compositor")?;
-                               }
                        }
                }
                Result::<()>::Ok(())
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cosmic-session-1.0.0~beta1.1+0/src/main.rs 
new/cosmic-session-1.0.0+0/src/main.rs
--- old/cosmic-session-1.0.0~beta1.1+0/src/main.rs      2025-09-19 
19:26:54.000000000 +0200
+++ new/cosmic-session-1.0.0+0/src/main.rs      2025-12-09 17:21:00.000000000 
+0100
@@ -11,7 +11,6 @@
 
 use async_signals::Signals;
 use color_eyre::{Result, eyre::WrapErr};
-use comp::create_privileged_socket;
 use cosmic_notifications_util::{DAEMON_NOTIFICATIONS_FD, 
PANEL_NOTIFICATIONS_FD};
 use futures_util::StreamExt;
 #[cfg(feature = "autostart")]
@@ -24,19 +23,13 @@
 use std::path::PathBuf;
 #[cfg(feature = "autostart")]
 use std::process::{Command, Stdio};
-use std::{
-       borrow::Cow,
-       env,
-       os::fd::{AsRawFd, OwnedFd},
-       sync::Arc,
-};
+use std::{borrow::Cow, env, os::fd::AsRawFd, sync::Arc};
 #[cfg(feature = "systemd")]
 use systemd::{get_systemd_env, is_systemd_used, spawn_scope};
 use tokio::{
-       net::UnixStream,
        sync::{
                Mutex,
-               mpsc::{self, Receiver, Sender},
+               mpsc::{Receiver, Sender},
                oneshot,
        },
        time::Duration,
@@ -46,7 +39,6 @@
 use tracing_subscriber::{EnvFilter, fmt, prelude::*};
 
 use crate::notifications::notifications_process;
-const XDP_COSMIC: Option<&'static str> = option_env!("XDP_COSMIC");
 #[cfg(feature = "autostart")]
 const AUTOSTART_DIR: &'static str = "autostart";
 #[cfg(feature = "autostart")]
@@ -142,14 +134,12 @@
                ))
                .await;
        let token = CancellationToken::new();
-       let (socket_tx, socket_rx) = mpsc::unbounded_channel();
        let (env_tx, env_rx) = oneshot::channel();
        let compositor_handle = comp::run_compositor(
                &process_manager,
                executable.clone(),
                args,
                token.child_token(),
-               socket_rx,
                env_tx,
                session_tx,
        )
@@ -312,7 +302,6 @@
                                "cosmic-panel",
                                panel_key.clone(),
                                panel_env_vars.clone(),
-                               socket_tx.clone(),
                        ))
                        .await
                        .expect("failed to start notifications daemon"),
@@ -332,7 +321,6 @@
                                "cosmic-notifications",
                                notif_key,
                                daemon_env_vars,
-                               socket_tx.clone(),
                        ))
                        .await
                        .expect("failed to start panel"),
@@ -340,115 +328,28 @@
        drop(guard);
 
        let span = info_span!(parent: None, "cosmic-app-library");
-       start_component(
-               "cosmic-app-library",
-               span,
-               &process_manager,
-               &env_vars,
-               &socket_tx,
-               Vec::new(),
-       )
-       .await;
+       start_component("cosmic-app-library", span, &process_manager, 
&env_vars).await;
 
        let span = info_span!(parent: None, "cosmic-launcher");
-       start_component(
-               "cosmic-launcher",
-               span,
-               &process_manager,
-               &env_vars,
-               &socket_tx,
-               Vec::new(),
-       )
-       .await;
+       start_component("cosmic-launcher", span, &process_manager, 
&env_vars).await;
 
        let span = info_span!(parent: None, "cosmic-workspaces");
-       start_component(
-               "cosmic-workspaces",
-               span,
-               &process_manager,
-               &env_vars,
-               &socket_tx,
-               Vec::new(),
-       )
-       .await;
+       start_component("cosmic-workspaces", span, &process_manager, 
&env_vars).await;
 
        let span = info_span!(parent: None, "cosmic-osd");
-       start_component(
-               "cosmic-osd",
-               span,
-               &process_manager,
-               &env_vars,
-               &socket_tx,
-               Vec::new(),
-       )
-       .await;
+       start_component("cosmic-osd", span, &process_manager, &env_vars).await;
 
        let span = info_span!(parent: None, "cosmic-bg");
-       start_component(
-               "cosmic-bg",
-               span,
-               &process_manager,
-               &env_vars,
-               &socket_tx,
-               Vec::new(),
-       )
-       .await;
+       start_component("cosmic-bg", span, &process_manager, &env_vars).await;
 
        let span = info_span!(parent: None, "cosmic-greeter");
-       start_component(
-               "cosmic-greeter",
-               span,
-               &process_manager,
-               &env_vars,
-               &socket_tx,
-               Vec::new(),
-       )
-       .await;
+       start_component("cosmic-greeter", span, &process_manager, 
&env_vars).await;
 
        let span = info_span!(parent: None, "cosmic-files-applet");
-       start_component(
-               "cosmic-files-applet",
-               span,
-               &process_manager,
-               &env_vars,
-               &socket_tx,
-               Vec::new(),
-       )
-       .await;
+       start_component("cosmic-files-applet", span, &process_manager, 
&env_vars).await;
 
        let span = info_span!(parent: None, "cosmic-idle");
-       start_component(
-               "cosmic-idle",
-               span,
-               &process_manager,
-               &env_vars,
-               &socket_tx,
-               Vec::new(),
-       )
-       .await;
-
-       if env::var("XDG_CURRENT_DESKTOP").as_deref() == Ok("COSMIC") {
-               let span = info_span!(parent: None, 
"xdg-desktop-portal-cosmic");
-               let mut sockets = Vec::with_capacity(1);
-               let extra_env = Vec::with_capacity(1);
-               let portal_extras =
-                       if let Ok((mut env, fd)) = 
create_privileged_socket(&mut sockets, &extra_env) {
-                               let mut env = env.remove(0);
-                               env.0 = "PORTAL_WAYLAND_SOCKET".to_string();
-                               vec![(fd, env, sockets.remove(0))]
-                       } else {
-                               Vec::new()
-                       };
-               start_component(
-                       
XDP_COSMIC.unwrap_or("/usr/libexec/xdg-desktop-portal-cosmic"),
-                       span,
-                       &process_manager,
-                       &env_vars,
-                       &socket_tx,
-                       portal_extras,
-               )
-               .await;
-       }
+       start_component("cosmic-idle", span, &process_manager, &env_vars).await;
 
        #[cfg(feature = "autostart")]
        if !*is_systemd_used() {
@@ -605,31 +506,13 @@
        span: tracing::Span,
        process_manager: &ProcessManager,
        env_vars: &[(String, String)],
-       socket_tx: &mpsc::UnboundedSender<Vec<UnixStream>>,
-       extra_fds: Vec<(OwnedFd, (String, String), UnixStream)>,
 ) {
-       let mut sockets = Vec::with_capacity(2);
-       let (mut env_vars, fd) = create_privileged_socket(&mut sockets, 
&env_vars).unwrap();
-
-       let socket_tx_clone = socket_tx.clone();
        let stdout_span = span.clone();
        let stderr_span = span.clone();
        let stderr_span_clone = stderr_span.clone();
        let cmd = cmd.into();
        let cmd_clone = cmd.clone();
 
-       let (mut fds, extra_fd_env, mut streams): (Vec<_>, Vec<_>, Vec<_>) =
-               itertools::multiunzip(extra_fds);
-       for kv in &extra_fd_env {
-               env_vars.push(kv.clone());
-       }
-
-       sockets.append(&mut streams);
-       if let Err(why) = socket_tx.send(sockets) {
-               error!(?why, "Failed to send the privileged socket");
-       }
-       let (extra_fd_env, _): (Vec<_>, Vec<_>) = 
extra_fd_env.into_iter().unzip();
-       fds.push(fd);
        if let Err(err) = process_manager
                .start(
                        Process::new()
@@ -663,42 +546,12 @@
                                                }
                                        }
                                })
-                               .with_on_exit(move |mut pman, key, err_code, 
will_restart| {
+                               .with_on_exit(move |mut _pman, _key, err_code, 
_will_restart| {
                                        if let Some(err) = err_code {
                                                error!("{cmd_clone} exited with 
error {}", err.to_string());
                                        }
-                                       let extra_fd_env = extra_fd_env.clone();
-                                       let socket_tx_clone = 
socket_tx_clone.clone();
-                                       async move {
-                                               if !will_restart {
-                                                       return;
-                                               }
-
-                                               let mut sockets = 
Vec::with_capacity(1 + extra_fd_env.len());
-                                               let mut fds = 
Vec::with_capacity(1 + extra_fd_env.len());
-                                               let (mut env_vars, fd) =
-                                                       
create_privileged_socket(&mut sockets, &[]).unwrap();
-                                               fds.push(fd);
-                                               for k in extra_fd_env {
-                                                       let (mut fd_env_vars, 
fd) =
-                                                               
create_privileged_socket(&mut sockets, &[]).unwrap();
-                                                       
fd_env_vars.last_mut().unwrap().0 = k;
-                                                       env_vars.append(&mut 
fd_env_vars);
-                                                       fds.push(fd)
-                                               }
-
-                                               if let Err(why) = 
socket_tx_clone.send(sockets) {
-                                                       error!(?why, "Failed to 
send the privileged socket");
-                                               }
-                                               if let Err(why) = 
pman.update_process_env(&key, env_vars).await {
-                                                       error!(?why, "Failed to 
update environment variables");
-                                               }
-                                               if let Err(why) = 
pman.update_process_fds(&key, move || fds).await {
-                                                       error!(?why, "Failed to 
update fds");
-                                               }
-                                       }
-                               })
-                               .with_fds(move || fds),
+                                       async {}
+                               }),
                )
                .await
        {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/cosmic-session-1.0.0~beta1.1+0/src/notifications.rs 
new/cosmic-session-1.0.0+0/src/notifications.rs
--- old/cosmic-session-1.0.0~beta1.1+0/src/notifications.rs     2025-09-19 
19:26:54.000000000 +0200
+++ new/cosmic-session-1.0.0+0/src/notifications.rs     2025-12-09 
17:21:00.000000000 +0100
@@ -6,11 +6,9 @@
        os::{fd::OwnedFd, unix::net::UnixStream},
        sync::Arc,
 };
-use tokio::sync::{Mutex, mpsc};
+use tokio::sync::Mutex;
 use tracing::Instrument;
 
-use crate::comp::create_privileged_socket;
-
 pub fn create_socket() -> Result<(OwnedFd, OwnedFd)> {
        // Create a new pair of unnamed Unix sockets
        let (sock_1, sock_2) = UnixStream::pair().wrap_err("failed to create 
socket pair")?;
@@ -38,20 +36,15 @@
        restart_cmd: &'static str,
        restart_key: Arc<Mutex<Option<ProcessKey>>>,
        restart_env_vars: Vec<(String, String)>,
-       socket_tx: mpsc::UnboundedSender<Vec<tokio::net::UnixStream>>,
 ) -> Process {
        env_vars.retain(|v| &v.0 != "WAYLAND_SOCKET");
 
        let stdout_span = span.clone();
        let stderr_span = span.clone();
-       let mut sockets = Vec::with_capacity(1);
-       let (env_vars, privileged_fd) = create_privileged_socket(&mut sockets, 
&env_vars).unwrap();
-       _ = socket_tx.send(sockets);
        let env_clone = env_vars.clone();
-       let socket_tx_clone = socket_tx.clone();
        Process::new()
                .with_executable(cmd)
-               .with_fds(move || vec![privileged_fd, fd])
+               .with_fds(move || vec![fd])
                .with_on_stdout(move |_, _, line| {
                        let stdout_span = stdout_span.clone();
                        async move {
@@ -96,26 +89,17 @@
                                cmd,
                                key.clone(),
                                my_env_vars.clone(),
-                               socket_tx_clone.clone(),
                        );
                        let restart_key = restart_key.clone();
-                       let socket_tx_clone = socket_tx_clone.clone();
 
                        let mut pman_clone = pman.clone();
                        async move {
                                if will_restart {
-                                       let mut sockets = Vec::with_capacity(1);
-                                       let (env_vars, new_fd) =
-                                               create_privileged_socket(&mut 
sockets, &my_env_vars).unwrap();
-
-                                       if let Err(why) = 
socket_tx_clone.send(sockets) {
-                                               error!(?why, "Failed to send 
the privileged socket");
-                                       }
-                                       if let Err(why) = 
pman_clone.update_process_env(&my_key, env_vars).await {
+                                       if let Err(why) = 
pman_clone.update_process_env(&my_key, my_env_vars).await {
                                                error!(?why, "Failed to update 
environment variables");
                                        }
                                        if let Err(why) = pman_clone
-                                               .update_process_fds(&my_key, 
move || vec![new_fd, my_fd])
+                                               .update_process_fds(&my_key, 
move || vec![my_fd])
                                                .await
                                        {
                                                error!(?why, "Failed to update 
fds");

++++++ cosmic-session.obsinfo ++++++
--- /var/tmp/diff_new_pack.FnXeDh/_old  2025-12-22 22:54:24.237794810 +0100
+++ /var/tmp/diff_new_pack.FnXeDh/_new  2025-12-22 22:54:24.245795140 +0100
@@ -1,5 +1,5 @@
 name: cosmic-session
-version: 1.0.0~beta1.1+0
-mtime: 1758302814
-commit: 379ce30715f637075879feda784edc89231792cf
+version: 1.0.0+0
+mtime: 1765297260
+commit: f4093070be2813787fbfd1a1ff43b213c1396343
 

++++++ vendor.tar.zst ++++++
/work/SRC/openSUSE:Factory/cosmic-session/vendor.tar.zst 
/work/SRC/openSUSE:Factory/.cosmic-session.new.1928/vendor.tar.zst differ: char 
8, line 1

Reply via email to