This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

deps(sessiond): update session_core_v1 protocol

r0chd (Jul 25, 2026, 8:56 PM +0200) a3e6caad fb8ad126

+75
+35
protocols/session_core_v1.xml
··· 1 1 <?xml version="1.0" encoding="UTF-8"?> 2 2 <protocol name="session_core_v1" version="1"> 3 + <copyright> 4 + Copyright (c) 2026 Oskar Rochowiak 5 + 6 + Permission is hereby granted, free of charge, to any person obtaining a 7 + copy of this software and associated documentation files (the "Software"), 8 + to deal in the Software without restriction, including without limitation 9 + the rights to use, copy, modify, merge, publish, distribute, sublicense, 10 + and/or sell copies of the Software, and to permit persons to whom the 11 + Software is furnished to do so, subject to the following conditions: 12 + 13 + The above copyright notice and this permission notice shall be included in 14 + all copies or substantial portions of the Software. 15 + 16 + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 22 + DEALINGS IN THE SOFTWARE. 23 + </copyright> 24 + 3 25 <object name="session_core_manager" version="1"> 4 26 <description summary="session observer"> 5 27 Unprivileged read-only interface for observing active sessions. ··· 101 123 </s2c> 102 124 <s2c name="username"> 103 125 <arg name="username" type="varchar" summary="username"/> 126 + </s2c> 127 + <s2c name="class"> 128 + <arg name="class" type="enum" interface="session_class" summary="session class"/> 104 129 </s2c> 105 130 <s2c name="vt"> 106 131 <arg name="vt" type="uint" summary="virtual terminal number"/> ··· 395 420 <value idx="1" name="active" summary="session is in the foreground"/> 396 421 <value idx="2" name="closing" summary="session is being destroyed"/> 397 422 <value idx="3" name="opening" summary="session is being created"/> 423 + </enum> 424 + 425 + <enum name="session_class"> 426 + <value idx="0" name="user" summary="interactive login session owned by a user"/> 427 + <value idx="1" name="greeter" summary="login prompt or display manager session"/> 428 + <value idx="2" name="lock_screen" summary="screen locker session associated with an existing login"/> 429 + <value idx="3" name="background" summary="non-interactive user session without an attached seat or VT"/> 430 + <value idx="4" name="background_light" summary="lightweight background session excluded from idle shutdown accounting"/> 431 + <value idx="5" name="manager" summary="per-user service manager session"/> 432 + <value idx="6" name="manager_early" summary="early per-user service manager session created before a regular login"/> 398 433 </enum> 399 434 400 435 <enum name="seat_mode">
+38
protocols/session_management_v2.xml
··· 1 1 <?xml version="1.0" encoding="UTF-8"?> 2 2 <protocol name="session_management_v2" version="1"> 3 + <copyright> 4 + Copyright (c) 2026 Oskar Rochowiak 5 + 6 + Permission is hereby granted, free of charge, to any person obtaining a 7 + copy of this software and associated documentation files (the "Software"), 8 + to deal in the Software without restriction, including without limitation 9 + the rights to use, copy, modify, merge, publish, distribute, sublicense, 10 + and/or sell copies of the Software, and to permit persons to whom the 11 + Software is furnished to do so, subject to the following conditions: 12 + 13 + The above copyright notice and this permission notice shall be included in 14 + all copies or substantial portions of the Software. 15 + 16 + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 21 + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 22 + DEALINGS IN THE SOFTWARE. 23 + </copyright> 24 + 3 25 <object name="session_manager" version="1"> 4 26 <description summary="privileged session manager"> 5 27 Privileged interface for registering owned sessions. ··· 44 66 </description> 45 67 <arg name="remote_host" type="varchar" summary="remote host name"/> 46 68 </c2s> 69 + <c2s name="class"> 70 + <description summary="stage the session class"> 71 + Optional. Must be sent before done. Defaults to user. 72 + </description> 73 + <arg name="class" type="enum" interface="session_class" summary="session class"/> 74 + </c2s> 47 75 <c2s name="env"> 48 76 <description summary="stage an environment variable"> 49 77 Optional. Must be sent before done. May be sent multiple times. ··· 84 112 <enum name="error_code"> 85 113 <value idx="0" name="not_found" summary="session or cgroup not found"/> 86 114 <value idx="1" name="io" summary="generic I/O error"/> 115 + </enum> 116 + 117 + <enum name="session_class"> 118 + <value idx="0" name="user" summary="interactive login session owned by a user"/> 119 + <value idx="1" name="greeter" summary="login prompt or display manager session"/> 120 + <value idx="2" name="lock_screen" summary="screen locker session associated with an existing login"/> 121 + <value idx="3" name="background" summary="non-interactive user session without an attached seat or VT"/> 122 + <value idx="4" name="background_light" summary="lightweight background session excluded from idle shutdown accounting"/> 123 + <value idx="5" name="manager" summary="per-user service manager session"/> 124 + <value idx="6" name="manager_early" summary="early per-user service manager session created before a regular login"/> 87 125 </enum> 88 126 </protocol>
+2
src/main.rs
··· 1 1 mod session_management_v2 { 2 2 hyprwire::include_protocol!("session_management_v2"); 3 3 pub use client::*; 4 + pub use spec::*; 4 5 } 5 6 mod session_core_v1 { 6 7 hyprwire::include_protocol!("session_core_v1"); ··· 344 345 ); 345 346 return; 346 347 }; 348 + session_object.send_class(session_management_v2::SessionClass::Manager); 347 349 session_object.send_done(); 348 350 349 351 self.managed_sessions.push(ManagedSession {