fosstodon.org is one of the many independent Mastodon servers you can use to participate in the fediverse.
Fosstodon is an invite only Mastodon instance that is open to those who are interested in technology; particularly free & open source software. If you wish to join, contact us for an invite.

Administered by:

Server stats:

9.8K
active users

#lldb

1 post1 participant0 posts today
Disconnect3d<p>I will be giving a talk on Pwndbg open source development in ~1h on a local Python meeetup!</p><p>It will be livestreamed on: <a href="https://www.youtube.com/live/euK_S81Qnuo?si=EhZ-WhnP-4yZRElE" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">youtube.com/live/euK_S81Qnuo?s</span><span class="invisible">i=EhZ-WhnP-4yZRElE</span></a></p><p><a href="https://infosec.exchange/tags/ctf" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ctf</span></a> <a href="https://infosec.exchange/tags/gdb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>gdb</span></a> <a href="https://infosec.exchange/tags/pwndbg" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>pwndbg</span></a> <a href="https://infosec.exchange/tags/lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lldb</span></a></p>
LavX News<p>Unveiling Debugging Secrets: How macOS 15.4 Breaks LLDB and What It Means for Developers</p><p>A recent update to macOS 15.4 has uncovered critical issues in the LLDB debugger, revealing hidden internal breakpoints that can impact software development and security. This article dives deep into ...</p><p><a href="https://news.lavx.hu/article/unveiling-debugging-secrets-how-macos-15-4-breaks-lldb-and-what-it-means-for-developers" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">news.lavx.hu/article/unveiling</span><span class="invisible">-debugging-secrets-how-macos-15-4-breaks-lldb-and-what-it-means-for-developers</span></a></p><p><a href="https://mastodon.cloud/tags/news" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>news</span></a> <a href="https://mastodon.cloud/tags/tech" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>tech</span></a> <a href="https://mastodon.cloud/tags/Debugging" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Debugging</span></a> <a href="https://mastodon.cloud/tags/macOS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>macOS</span></a> <a href="https://mastodon.cloud/tags/LLDB" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LLDB</span></a></p>
Habr<p>[Перевод] Отладка приложения, которое не хочет, чтобы его отлаживали</p><p>Недавно я столкнулся с приложением , которое: Блокирует прикрепление к нему отладчиков. Выполняет преждевременный выход при попытках инъецирования кода. Приводит к вылету телефона целиком, если запустить её со включённым джейлбрейком (!). По последнему пункту: кто вообще так делает??? Всё, что мы делаем (например, выполняем моддинг TikTok , чтобы он показывал только видео с котиками, или устраняем торможения в чужих приложениях), требует возможности исследования работы приложения. Но в приложениях для iOS очень часто используются дополнительные защиты от любопытных глаз, например, обнаружение джейлбрейка или обфускация кода . Похоже, это приложение стало на удивление интересной комбинацией всего перечисленного. Намного более сложной, чем можно было бы ожидать от обычного старого виджет-приложения.</p><p><a href="https://habr.com/ru/companies/ruvds/articles/883942/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/ruvds/ar</span><span class="invisible">ticles/883942/</span></a></p><p><a href="https://zhub.link/tags/ios" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ios</span></a> <a href="https://zhub.link/tags/%D0%BE%D0%B1%D1%80%D0%B0%D1%82%D0%BD%D0%B0%D1%8F_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>обратная_разработка</span></a> <a href="https://zhub.link/tags/%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0_%D0%BF%D0%BE%D0%B4_ios" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>разработка_под_ios</span></a> <a href="https://zhub.link/tags/lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lldb</span></a> <a href="https://zhub.link/tags/flex" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>flex</span></a> <a href="https://zhub.link/tags/frida" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>frida</span></a> <a href="https://zhub.link/tags/%D0%BF%D0%B0%D1%82%D1%87%D0%B8%D0%BD%D0%B3" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>патчинг</span></a> <a href="https://zhub.link/tags/ruvds_%D0%BF%D0%B5%D1%80%D0%B5%D0%B2%D0%BE%D0%B4" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ruvds_перевод</span></a></p>
CLion Blog<p>Faster Debugging for Massive MSVC-Based Projects in CLion<br><a href="https://techhub.social/tags/Clang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Clang</span></a> <a href="https://techhub.social/tags/CLion" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CLion</span></a> <a href="https://techhub.social/tags/News" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>News</span></a> <a href="https://techhub.social/tags/Debugger" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Debugger</span></a> <a href="https://techhub.social/tags/Eap" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Eap</span></a> <a href="https://techhub.social/tags/Lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Lldb</span></a> <a href="https://techhub.social/tags/Msvc" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Msvc</span></a></p><p><a href="https://blog.jetbrains.com/clion/2025/02/lldb-msvc-improvements/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">blog.jetbrains.com/clion/2025/</span><span class="invisible">02/lldb-msvc-improvements/</span></a></p>
LavX News<p>Zig Language Enhancements: A Leap Towards Performance and Debugging Excellence</p><p>The Zig programming language is undergoing significant enhancements, particularly with its memory allocator and debugging support. These changes not only improve performance but also position Zig as a...</p><p><a href="https://news.lavx.hu/article/zig-language-enhancements-a-leap-towards-performance-and-debugging-excellence" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="ellipsis">news.lavx.hu/article/zig-langu</span><span class="invisible">age-enhancements-a-leap-towards-performance-and-debugging-excellence</span></a></p><p><a href="https://mastodon.cloud/tags/news" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>news</span></a> <a href="https://mastodon.cloud/tags/tech" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>tech</span></a> <a href="https://mastodon.cloud/tags/MemoryManagement" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>MemoryManagement</span></a> <a href="https://mastodon.cloud/tags/ZigLang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ZigLang</span></a> <a href="https://mastodon.cloud/tags/LLDB" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LLDB</span></a></p>
Pyrzout :vm:<p>UScope: A New Linux Debugger And Not A GDB Shell, Apparently <a href="https://hackaday.com/2025/02/07/uscope-a-new-linux-debugger-and-not-a-gdb-shell-apparently/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">hackaday.com/2025/02/07/uscope</span><span class="invisible">-a-new-linux-debugger-and-not-a-gdb-shell-apparently/</span></a> <a href="https://social.skynetcloud.site/tags/SoftwareDevelopment" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SoftwareDevelopment</span></a> <a href="https://social.skynetcloud.site/tags/LinuxHacks" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LinuxHacks</span></a> <a href="https://social.skynetcloud.site/tags/graphical" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>graphical</span></a> <a href="https://social.skynetcloud.site/tags/debugger" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>debugger</span></a> <a href="https://social.skynetcloud.site/tags/software" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>software</span></a> <a href="https://social.skynetcloud.site/tags/linux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>linux</span></a> <a href="https://social.skynetcloud.site/tags/LLDB" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LLDB</span></a> <a href="https://social.skynetcloud.site/tags/rust" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>rust</span></a> <a href="https://social.skynetcloud.site/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a>++ <a href="https://social.skynetcloud.site/tags/gdb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>gdb</span></a> <a href="https://social.skynetcloud.site/tags/zig" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>zig</span></a> <a href="https://social.skynetcloud.site/tags/Go" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Go</span></a></p>
Pedro Piñera<p>We really want to take automation in Swift Package and Xcode projects into a better place:</p><p>1. You should be able to build and test your projects in the most optimal way and get telemetry to improve things.<br>2. You should be able to extend automation with your own workflows in Swift and be able to debug them with <a href="https://mastodon.pepicrft.me/tags/LLDB" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LLDB</span></a><br>3. You should be able to virtualise the execution of the workflows locally.<br>4. You should be able to run workflows virtualised in a remote environment like you did locally.</p>
Karol Mazurek<p>Fresh article on how to build, <a href="https://infosec.exchange/tags/RE" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>RE</span></a>, <a href="https://infosec.exchange/tags/debug" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>debug</span></a>, and <a href="https://infosec.exchange/tags/recon" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>recon</span></a> <a href="https://infosec.exchange/tags/XPC" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>XPC</span></a> services on <a href="https://infosec.exchange/tags/macOS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>macOS</span></a> with an <a href="https://infosec.exchange/tags/XCode" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>XCode</span></a> <a href="https://infosec.exchange/tags/Programming" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Programming</span></a> walkthrough (<a href="https://infosec.exchange/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a> and <a href="https://infosec.exchange/tags/NSXPC" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NSXPC</span></a> APIs). Plus actual <a href="https://infosec.exchange/tags/debugging" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>debugging</span></a> tips with <a href="https://infosec.exchange/tags/LLDB" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LLDB</span></a>. If you are into <a href="https://infosec.exchange/tags/macOS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>macOS</span></a>/#iOS, this one's for you - <a href="https://infosec.exchange/tags/code" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>code</span></a> included.<br>Enjoy!</p><p><a href="https://karol-mazurek.medium.com/xpc-programming-on-macos-7e1918573f6d?sk=v2%2F21c4e9c7-40a5-43dd-804b-0d8f9bc4e94c" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">karol-mazurek.medium.com/xpc-p</span><span class="invisible">rogramming-on-macos-7e1918573f6d?sk=v2%2F21c4e9c7-40a5-43dd-804b-0d8f9bc4e94c</span></a></p>
Luke T. Shumaker<p>In <a href="https://fosstodon.org/tags/lldb" class="mention hashtag" rel="tag">#<span>lldb</span></a> by default a backtrace shows not just the $pc and function name, but also which objfile that pc/func are in. Like &quot;exename&quot; or &quot;libc.so&quot; or whatever. Is there a way to get <a href="https://fosstodon.org/tags/gnu" class="mention hashtag" rel="tag">#<span>gnu</span></a> <a href="https://fosstodon.org/tags/gdb" class="mention hashtag" rel="tag">#<span>gdb</span></a> to do this? (Or am I going to have to submit a patch myself? :P )</p>
yugaego 🌍<p>I like writing articles that help myself not once afterwards.</p><p>This case is because of being a rare user of <a href="https://fosstodon.org/tags/lldb" class="mention hashtag" rel="tag">#<span>lldb</span></a> for <a href="https://fosstodon.org/tags/rustlang" class="mention hashtag" rel="tag">#<span>rustlang</span></a> <a href="https://fosstodon.org/tags/debugging" class="mention hashtag" rel="tag">#<span>debugging</span></a>.</p><p><a href="https://blog.ego.team/programming/rust-debugger-intro.html" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">blog.ego.team/programming/rust</span><span class="invisible">-debugger-intro.html</span></a></p>
John-Mark Gurney<p>If I was on gdb, that print would have done:<br>```<br>(gdb) print &amp;a<br>$1 = (struct a *) 0x7fffffffe4f8<br>```</p><p>which means that I can then use $1 in later expressions to use that value, so then I can do:<br>```<br>(gdb) watch $1-&gt;a<br>Watchpoint 2: $1-&gt;a<br>```<br>and it just works.</p><p>None of that happens w/ lldb.</p><p>And none of the guides that talk about how to convert gdb to lldb mention how to deal w/ these deficiencies.</p><p><a href="https://flyovercountry.social/tags/lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lldb</span></a></p>
John-Mark Gurney<p>Ok, I just found out that when you print stuff, lldb doesn't actually print things properly.<br>```<br>(lldb) run<br>[...]<br>-&gt; 10 struct a a = (struct a){};<br>[...]<br>Target 0: (t) stopped.<br>(lldb) print &amp;a<br>(a *) 0x000000016fdff1b8<br>(lldb) print ((a *) 0x000000016fdff1b8)-&gt;a<br>error: &lt;user expression 1&gt;:1:6: expected expression<br>((a *) 0x000000016fdff1b8)-&gt;a<br> ^<br>(lldb) print ((struct a *) 0x000000016fdff1b8)-&gt;a<br>(int) 4266848<br>```</p><p>I also just realized that lldb doesn't keep a history of values printed.</p><p><a href="https://flyovercountry.social/tags/lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lldb</span></a></p>
CLion Blog<p>CLion 2024.3 EAP 3: OpenCV Image Viewer and the Ability to Attach the Debugger to an Unstarted Process<br><a href="https://techhub.social/tags/Clang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Clang</span></a> <a href="https://techhub.social/tags/CLion" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CLion</span></a> <a href="https://techhub.social/tags/Eap" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Eap</span></a> <a href="https://techhub.social/tags/News" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>News</span></a> <a href="https://techhub.social/tags/Clionnova" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Clionnova</span></a> <a href="https://techhub.social/tags/Debugger" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Debugger</span></a> <a href="https://techhub.social/tags/Gdb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Gdb</span></a> <a href="https://techhub.social/tags/Lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Lldb</span></a> <a href="https://techhub.social/tags/Opencv" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Opencv</span></a></p><p><a href="https://blog.jetbrains.com/clion/2024/10/2024-3-eap-3/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">blog.jetbrains.com/clion/2024/</span><span class="invisible">10/2024-3-eap-3/</span></a></p>
🅴🆁🆄🅰 🇷🇺Про контейнеризацию в разработке софта.<br>Порой имеется несколько разных #<a class="" href="https://hub.hubzilla.de/search?tag=linux" rel="nofollow noopener noreferrer" target="_blank">linux</a> (и дистрибутивов и версий) под которые надо разрабатывать приложения (собирая, отлаживая). Либо локально на машине разработчика или же на серверах каких-то. <br><br>Как вариант, берётся #<a class="" href="https://hub.hubzilla.de/search?tag=VSCode" rel="nofollow noopener noreferrer" target="_blank">VSCode</a> с <a href="https://code.visualstudio.com/docs/devcontainers/containers" rel="nofollow noopener noreferrer" target="_blank">предлагаемым подходом</a> и даже есть более-менее <a href="https://code.visualstudio.com/docs/devcontainers/tutorial" rel="nofollow noopener noreferrer" target="_blank">подробная информация</a> для освоения процесса.<br>Для чего берётся вот это расширение <a href="https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers" rel="nofollow noopener noreferrer" target="_blank">Dev Containers</a>. И в контейнер ходит не через #<a class="" href="https://hub.hubzilla.de/search?tag=SSH" rel="nofollow noopener noreferrer" target="_blank">SSH</a>, а производит установку внутрь контейнера такой вещи как «VSCode Server». Выполняется установка прозрачно для пользователя, в процессе «подключения» к заданному контейнеру (на локальной машине). #<a class="" href="https://hub.hubzilla.de/search?tag=VSCode" rel="nofollow noopener noreferrer" target="_blank">VSCode</a> берёт идентификатор своей версии (commit id) и по нему скачивает «VSCode Server» со специального сайта #<a class="" href="https://hub.hubzilla.de/search?tag=Microsoft" rel="nofollow noopener noreferrer" target="_blank">Microsoft</a>.<br><br>А само окно #<a class="" href="https://hub.hubzilla.de/search?tag=VSCode" rel="nofollow noopener noreferrer" target="_blank">VSCode</a> становится чем-то вроде удалённого GUI для того сервера, что теперь запущен в контейнере. <br>Приколов несколько:<ul><li> В таком открывшемся окне #<a class="" href="https://hub.hubzilla.de/search?tag=VSCode" rel="nofollow noopener noreferrer" target="_blank">VSCode</a> на вкладке расширений придётся включить уже имеющиеся/установленные расширения, чтобы они скопировались внутрь контейнера. Т.е. работают он реально там на сервере, а не тут локально.</li><li> Некоторым расширениям нужны всякие вещи, вроде #<a class="" href="https://hub.hubzilla.de/search?tag=LSP" rel="nofollow noopener noreferrer" target="_blank">LSP</a> сервера, #<a class="" href="https://hub.hubzilla.de/search?tag=lldb" rel="nofollow noopener noreferrer" target="_blank">lldb</a> / #<a class="" href="https://hub.hubzilla.de/search?tag=gdb" rel="nofollow noopener noreferrer" target="_blank">gdb</a>, иногда <a href="https://github.com/lldb-tools/lldb-mi" rel="nofollow noopener noreferrer" target="_blank">lldb-mi</a>. Всё это внутрь контейнера придётся устанавливать самостоятельно, ручками.</li><li> Использовать расширение <a href="https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers" rel="nofollow noopener noreferrer" target="_blank">Dev Containers</a> получится лишь на официальной Visual Studio Code — в таких вариантах как #<a class="" href="https://hub.hubzilla.de/search?tag=Code-OSS" rel="nofollow noopener noreferrer" target="_blank">Code-OSS</a>, #<a class="" href="https://hub.hubzilla.de/search?tag=VSCodium" rel="nofollow noopener noreferrer" target="_blank">VSCodium</a> и #<a class="" href="https://hub.hubzilla.de/search?tag=Uncoded" rel="nofollow noopener noreferrer" target="_blank">Uncoded</a> оно просто не доступно. А если его установить через скаченный #<a class="" href="https://hub.hubzilla.de/search?tag=VSIX" rel="nofollow noopener noreferrer" target="_blank">VSIX</a>, то работать не будет.</li></ul><br><br><strong>Хорошо или плохо?</strong><br>Официальный #<a class="" href="https://hub.hubzilla.de/search?tag=VSCode" rel="nofollow noopener noreferrer" target="_blank">VSCode</a> конечно же шлёт телеметрию в #<a class="" href="https://hub.hubzilla.de/search?tag=Microsoft" rel="nofollow noopener noreferrer" target="_blank">Microsoft</a> «со страшной силой» да и вообще, является проприетарным вариантом дистрибьюции #<a class="" href="https://hub.hubzilla.de/search?tag=Code-OSS" rel="nofollow noopener noreferrer" target="_blank">Code-OSS</a>, который тоже, в свою очередь, страдает телеметрией (из-за чего и появились #<a class="" href="https://hub.hubzilla.de/search?tag=VSCodium" rel="nofollow noopener noreferrer" target="_blank">VSCodium</a> да #<a class="" href="https://hub.hubzilla.de/search?tag=Uncoded" rel="nofollow noopener noreferrer" target="_blank">Uncoded</a> ).<br><br>Однако, именно в силу проприетарности #<a class="" href="https://hub.hubzilla.de/search?tag=VSCode" rel="nofollow noopener noreferrer" target="_blank">VSCode</a> и позволяет из галереи устанавливать проприетарное же расширение <a href="https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers" rel="nofollow noopener noreferrer" target="_blank">Dev Containers</a>. А в галереи у #<a class="" href="https://hub.hubzilla.de/search?tag=Code-OSS" rel="nofollow noopener noreferrer" target="_blank">Code-OSS</a> этого расширения нет и понятно почему —&nbsp;не сможет скачать серверную часть, которую нужно устанавливать внутри контейнера (в качестве агента) и которая тоже проприетарная.<br><br><strong>В целом:</strong> <ul><li> Работать с кодом получается, равно как и обычным образом, как если бы тулчейн и библиотеки не находились внутри контейнера;</li><li> Поддерживаются как обычные #<a class="" href="https://hub.hubzilla.de/search?tag=Docker" rel="nofollow noopener noreferrer" target="_blank">Docker</a> -контейнеры так и #<a class="" href="https://hub.hubzilla.de/search?tag=rootless" rel="nofollow noopener noreferrer" target="_blank">rootless</a> варианты контейнеров — соответственно, и #<a class="" href="https://hub.hubzilla.de/search?tag=Podman" rel="nofollow noopener noreferrer" target="_blank">Podman</a> -контейнеры тоже (которые априори #<a class="" href="https://hub.hubzilla.de/search?tag=rootless" rel="nofollow noopener noreferrer" target="_blank">rootless</a> );</li><li> Не обязательно заморачиваться с <code>.devcontainer/devcontainer.json</code> в проекте, можно подключаться из #<a class="" href="https://hub.hubzilla.de/search?tag=VSCode" rel="nofollow noopener noreferrer" target="_blank">VSCode</a> к любому контейнеру —&nbsp;запустится новое окно редактора.</li></ul><br><br>Нормальный проприетарный продукт, охватывает разные сценарии. В том числе и для любителей сидеть на #<a class="" href="https://hub.hubzilla.de/search?tag=Windows" rel="nofollow noopener noreferrer" target="_blank">Windows</a> и вести разработку через #<a class="" href="https://hub.hubzilla.de/search?tag=WSL" rel="nofollow noopener noreferrer" target="_blank">WSL</a> (Windows Subsystem for Linux v2).<br><br>Чтобы работало с #<a class="" href="https://hub.hubzilla.de/search?tag=rootless" rel="nofollow noopener noreferrer" target="_blank">rootless</a> контейнерами надо в: <code>~/.config/Code/User/settings.json</code><br>прописать параметры вида:<br><pre><code>"dev.containers.dockerSocketPath": "unix:///run/user/100500/docker.sock",<br>"docker.environment": {<br>&nbsp;&nbsp;&nbsp;&nbsp;"DOCKER_HOST": "unix:///run/user/100500/docker.sock"<br>},</code></pre>Подсмотреть unix-socket можно через:<br><pre><code>$ systemctl status --user docker.socket<br>... <br>&nbsp;&nbsp;&nbsp;&nbsp; Listen: /run/user/100500/docker.sock (Stream)</code></pre><br>#<a class="" href="https://hub.hubzilla.de/search?tag=vscode" rel="nofollow noopener noreferrer" target="_blank">vscode</a> #<a class="" href="https://hub.hubzilla.de/search?tag=containerization" rel="nofollow noopener noreferrer" target="_blank">containerization</a> #<a class="" href="https://hub.hubzilla.de/search?tag=containers" rel="nofollow noopener noreferrer" target="_blank">containers</a> #<a class="" href="https://hub.hubzilla.de/search?tag=softwaredevelopment" rel="nofollow noopener noreferrer" target="_blank">softwaredevelopment</a> #<a class="" href="https://hub.hubzilla.de/search?tag=software" rel="nofollow noopener noreferrer" target="_blank">software</a> #<a class="" href="https://hub.hubzilla.de/search?tag=lang_ru" rel="nofollow noopener noreferrer" target="_blank">lang_ru</a> @<a href="https://3zi.ru/@Russia" rel="nofollow noopener noreferrer" target="_blank">Russia</a> @<a href="https://newsmast.community/@programming" rel="nofollow noopener noreferrer" target="_blank">Programming Feed</a>
nutilius@SDF<p>So problem seems to be solved. The reason was in different initiation of memory data structures. I wrongly assumed that structure was zeroed. Now it works without any problem. <br>But <a href="https://social.sdf.org/tags/OpenBSD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>OpenBSD</span></a> <a href="https://social.sdf.org/tags/LLDB" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LLDB</span></a> still cannot attach to running process, breaks with `Out of memory` and core dump. Maybe I should look Ito that core … using LLDB 😂.</p>
Felix Palmen :freebsd: :c64:<p><span class="h-card" translate="no"><a href="https://mastodon.bsd.cafe/@matuzalem" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>matuzalem</span></a></span> here's a release to test 😉 I'm pretty sure it won't crash, but can't guarantee. It's been examined a lot, also with <a href="https://mastodon.bsd.cafe/tags/lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lldb</span></a> and <a href="https://mastodon.bsd.cafe/tags/valgrind" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>valgrind</span></a>, but doesn't have any automated tests so far. I'm still undecided about investing the time and effort to change that, would need to pick a library/framework first (C doesn't offer any testing capabilities in the language) and then, while a few modules like the unicode string functions are perfectly unit-testable, the whole project is a large "event processor" (like any GUI application) and depends on these external events, so a *lot* of tedious mocking would be required for better test coverage ...</p><p>edit: btw, fixed a weird bug before releasing this, it was possible to enter a state where processing X11 events stopped (requesting to minimize with the WM ignoring the request). Not a crash, but a bug 😅</p>
:rss: Hacker News<p>How Conditional Breakpoints Work<br><a href="https://werat.dev/blog/how-conditional-breakpoints-work/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">werat.dev/blog/how-conditional</span><span class="invisible">-breakpoints-work/</span></a><br><a href="https://rss-mstdn.studiofreesia.com/tags/ycombinator" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ycombinator</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/blog" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>blog</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/developer" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>developer</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/personal" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>personal</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/debugging" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>debugging</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/debuggers" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>debuggers</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/visual_studio" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>visual_studio</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lldb</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/expression_evaluation" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>expression_evaluation</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/lldb_eval" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lldb_eval</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/raddbg" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>raddbg</span></a> <a href="https://rss-mstdn.studiofreesia.com/tags/delve" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>delve</span></a></p>
Felix Palmen :freebsd: :c64:<p><a href="https://mastodon.bsd.cafe/tags/X11" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>X11</span></a> <a href="https://mastodon.bsd.cafe/tags/programming" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>programming</span></a> with <a href="https://mastodon.bsd.cafe/tags/xcb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>xcb</span></a>, tales of the quest ... 🧐</p><p>So yes, there were still bugs. And despite (optional) extensive trace logging, I needed a <a href="https://mastodon.bsd.cafe/tags/debugger" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>debugger</span></a> to really understand what was going on. So, did the following:</p><p>- launch from within lldb<br>- do some preparations to get close to the "buggy" behavior<br>- interrupt, set a breakpoint, continue<br>- click something, breakpoint gets hit<br>- oh 😡 --- mouse is grabbed 🙈</p><p>This is effectively a deadlock of your X session. Your program, stopped by the debugger, is never able to release the grab. and you can't resume it because with the grab in place, there's no way to focus the <a href="https://mastodon.bsd.cafe/tags/xterm" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>xterm</span></a> running <a href="https://mastodon.bsd.cafe/tags/lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lldb</span></a>. 🤦</p><p>Note to self: When debugging your X11 program, always have the controlling terminal for the debugger outside the X session used for debugging. Of course, the most convenient solution here is once again <a href="https://mastodon.bsd.cafe/tags/Xephyr" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Xephyr</span></a> 😉</p>
lambdageek<p>context: <a href="https://github.com/dotnet/diagnostics/issues/4551" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/dotnet/diagnostics/</span><span class="invisible">issues/4551</span></a></p><p><a href="https://mastodon.social/tags/macOS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>macOS</span></a> <a href="https://mastodon.social/tags/lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lldb</span></a> <a href="https://mastodon.social/tags/mach" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>mach</span></a> <a href="https://mastodon.social/tags/hardenedRuntime" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>hardenedRuntime</span></a></p>
lambdageek<p>I missed <a href="https://mastodon.social/tags/WWDC" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>WWDC</span></a>. Did they mention in the keynote whether they fixed the fucking hardening on lldb? Can I run plugins that call thread_swap_exception_ports() now or what?</p><p><a href="https://mastodon.social/tags/lldb" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>lldb</span></a> <a href="https://mastodon.social/tags/clang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>clang</span></a> <a href="https://mastodon.social/tags/macOS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>macOS</span></a></p>