1
0
mirror of https://github.com/AvengeMedia/DankMaterialShell.git synced 2026-08-02 03:28:28 -04:00
Commit Graph

37 Commits

Author SHA1 Message Date
bbedward 0cdb065739 core: migrate to dankgo shared go modules, embed quickshell in DMS
binary to mount at runtime, -c or DMS_SHELL_DIR overrides required to
explicitly override embedded configuration
2026-07-18 14:51:52 -04:00
bbedward bb0be2b215 clipboard: store text alongside image when both are offered
related #2849
port 1.5
2026-07-13 18:23:00 -04:00
Rafi ca89e12963 core: fix security and concurrency issues found in a backend audit (#2805)
* core: fix security and concurrency issues found in backend audit

Security:
- privesc: pipe the sudo password via stdin (sudo -S) instead of
  embedding it in the command string, so it no longer appears in argv
  (readable by any local user via /proc/<pid>/cmdline or ps)
- greeter: tokenize a session .desktop Exec= line into argv and execve
  directly instead of running it through /bin/sh -c, closing a command-
  injection path via user-writable ~/.local/share/wayland-sessions
- plugins: reject path-separator/.. in plugin id/name before joining
  into a filesystem path, closing an arbitrary-directory-delete in the
  uninstall/update fallback
- keybinds/hyprland: always quote unrecognized bind actions/keys when
  writing generated Lua; only re-emit genuine round-tripped custom Lua
  verbatim (tracked via an explicit flag), closing a Lua-injection path
- desktop/mimeapps: reject newline/bracket in mime/desktop-id fields so
  they can't inject fake sections into the shared mimeapps.list

Robustness / concurrency:
- server: recover panics in the request-dispatch path so one bad
  handler can't crash the daemon and drop every client
- go-wayland: recover panics in the shared dispatch choke point so a
  malformed compositor event can't crash CLI tools / the daemon
- server: per-connection D-Bus client ID instead of a shared constant,
  fixing cross-client signal delivery and subscription teardown
- network: guard the NetworkManager device maps with a mutex (a
  concurrent map read/write here is an unrecoverable fatal error)
- cups: close the event channel on Stop() so Unsubscribe() of the last
  subscriber no longer deadlocks; allocate the fresh channel in Start()
- freedesktop: reuse the shared session conn for the settings watcher
  and tear it down in Close(), fixing a per-Manager conn+goroutine leak
- clipboard: mutex-guard lazy dbusConn creation
- geolocation: use WithMatchMember for the GeoClue2 LocationUpdated
  signal (was WithMatchSender with an interface.member string, so the
  match never fired and live location updates never arrived)
- screenshot: set failed=true on buffer/pool creation errors so the
  dispatch loop doesn't wait forever for a ready/failed that never comes

* apply code review comments

---------

Co-authored-by: bbedward <bbedward@gmail.com>
2026-07-13 15:44:42 -04:00
bbedward fd99558ce5 clipboard: implement virtual-keyboard-unstable-v1 to replace wtype for
pasting entries
2026-07-04 16:24:14 -04:00
jbwfu 5483303714 Fix/clipboard pinned recents dedupe (#2605)
* fix(clipboard): unpin pinned duplicates from history entries

* fix(clipboard): dedupe recents when using pinned entries
2026-06-11 15:05:28 -04:00
purian23 a34fda984d fix(Clipboard): stale image entry handling
- Resolved random DMS API errors & QML Warnings
2026-06-03 03:17:02 -04:00
jbwfu 0a668df138 fix(clipboard): prefer image MIME types over text fallbacks (#2551) 2026-06-01 11:44:10 -04:00
bbedward f4c11bc2ff clipboard: decode metadata only 2026-04-23 09:28:26 -04:00
bbedward babc8feb2b clipboard: fix memory leak from unbounded offer maps and unguarded file reads 2026-02-20 11:39:41 -05:00
purian23 0922e3e459 clipboard: Fix pinned entry logic
- Add keyboard nav to pinned entries
- Fix wrong copied selection upon Enter
2026-02-09 20:53:48 -05:00
bbedward be0ca993ff clipboard: add raw image mime-type to offers in CopyFile 2026-01-29 09:46:01 -05:00
bbedward 2deeab9d08 clipboard: touch copied history entry
- makes it appear at the top of the history
2026-01-28 16:09:32 -05:00
bbedward eda59b348c clipboard: react to changes 2026-01-27 22:50:28 -05:00
bbedward a9cb2fe912 clipboard: fix hash duplication check, set isOwner for CopyFile 2026-01-27 22:35:20 -05:00
bbedward 122fb16dfb clipboard: simplify copyFile, fix copy image from history 2026-01-26 21:49:34 -05:00
bbedward 8499033221 clipboard: fix file transfer & export functionality
- grants read to all installed flatpak apps
2026-01-26 17:58:06 -05:00
bbedward 08cc076a4c clipboard: skip application/vnd.portal.filetransfer mime in history 2026-01-26 16:40:56 -05:00
bbedward 2a02d5594c clipboard: add cl copy --download option for images/videos
- offers application/vnd.portal.filetransfer and text/uri-list
2026-01-26 16:34:47 -05:00
purian23 35cbfeb008 feat: Save Pinned Clipboard entries 2026-01-17 00:52:47 -05:00
Anton Kesy f5f21e738a fix typos (#1304) 2026-01-08 14:10:24 -05:00
bbedward 8c9c936d0e clipboard: add cliphist-migrate CLI 2026-01-06 16:49:18 -05:00
bbedward c1d57946d9 matugen: fix adw-gtk3 setting in light mode
- and add models.Get/GetOr helpers
2026-01-01 23:13:12 -05:00
bbedward 2dbadfe1b5 clipboard: single disable + read-only history option 2025-12-31 09:14:35 -05:00
bbedward 45b8b2a895 clipboard: don't store sensitive mime types in history
fixes #1185
2025-12-28 11:13:34 -05:00
bbedward d97392d46e clipboard: remove ownership option 2025-12-17 15:34:40 -05:00
bbedward 31b67164c7 clipboard: re-add ownership option 2025-12-13 09:45:04 -05:00
bbedward 786c13f892 clipboard: fix mime type selection 2025-12-13 09:35:55 -05:00
bbedward 830a715b6d wlcontext: use poll with wake pipe instead of read deadlines 2025-12-13 00:46:30 -05:00
bbedward 7641171a01 clipboard: move cl receive to main wlcontext goroutine 2025-12-13 00:16:56 -05:00
bbedward c3ab409b6a clipboard: scrap persist, optimize mime-type handling 2025-12-12 23:48:07 -05:00
bbedward 5c3346aa9d core: fix test 2025-12-11 16:33:31 -05:00
bbedward 7c4b383477 clipboard: persistence off by default
- It's a little risky and messy of a default
2025-12-11 16:28:56 -05:00
bbedward bdc0e8e0fc clipboard: dont take ownership on nil offers 2025-12-11 15:55:42 -05:00
bbedward 6d66f93565 core: mock wayland context for tests & add i18n guidance to CONTRIBUTING 2025-12-11 14:50:02 -05:00
bbedward 0709f263af core: add test coverage for some of the wayland stack
- mostly targeting any race issue detection
2025-12-11 13:47:18 -05:00
bbedward 7c6f0432c8 clipboard: add copyEntry (by id) handler 2025-12-11 12:00:47 -05:00
bbedward 6d62229b5f clipboard: introduce native clipboard, clip-persist, clip-storage functionality 2025-12-11 09:41:07 -05:00