Plugin breaks on majority of OS:s. Joshua's 22.04 works. Difference?

Hello!

I’m having an issue with a plugin (Jetbrains Academy on Pycharm) and it breaks on basically every OS installation there is for Radxa 5B. The only OS it works on is Joshua Rieks’ 22.04 Ubuntu. So I’m wondering if I can make a build where the parameters resemble the 22.04 with say, an Armbian? I’m basically asking for a “diff” command on Ubuntu 22 & 24.

Armbian Ubuntu 22.04 or 24.04? I don’t know nothing about those plugins, but if you share some logs with errors, preferable on Armbian forums, we could know a lot more.

Diff between 22 and 24 even Ubuntu don’t know :wink: Unless if you only want to compare packages names and numbers. Which doesn’t give big enough picture.

1 Like

Hello Igor and thank you for your reply. I have seen you in commits on Github for Armbian and as I’m very new to this, I’m actually speaking to royalty right now :slight_smile:.

Sry for the late answer, I’ve been sick. So, I remember testing out Armbian a long time ago (12+ months), and at some point with kernel 5.x, it was working. Until it too, broke recently with the new updates. I was almost certain it had to do with the kernel. Because the same thing is happening with @Spooky 's Ubuntu 22 vs 24. The plugin has always been broken on Radxa images, no matter the ‘desktop UI’/gdm or however the big three are called. I mean of course, KDE, XFCE or GNOME. And this is the case for all distros and releases, so nothing there.

It would be of great help to do a, in Python terms, a 'pip freeze > reqs.txt, but for the distros that work, and those that don’t. @kwankiu 's releases have never worked with this specific plugin, no matter desktop nor kernel. So there is something in the development pipeline that goes in a direction that eventually makes my work very cumbersome and limits me to specific OS:s (or rather one, Joshua’s Ubuntu 22.x, which I have other less important bugs with, like sound not working, buggy Chrome making strange rendering, Firefox, which is the alternative, but breaks very often and produce buggy rendering of a page). Next alternative would be the legacy Gnome Armbian. Issue is, and has always been, that the cursor/OS gets stuck every 5 seconds, for a second, until it continues, and does so all the time, which is very disturbing. This issue is fixed on Armbian 6.x, but now the plugin is broken. I love the Radxa images (especially the stability on kernel 6.x b3/latest). Not so much as preferably Armbian, or the learning curve one would get from Arch Linux, but the plugin is broken (even on Arch UEFI).

The plugin in question, is a plugin from the IDE developers of PyCharm (and IntelliJ). The plugin is used to connect the platform hyperskill.org, which is a programming learning platform (the best by my account actually). There’s a rendering software called JCEF, which is some kind of Java thing rendering parts of the IDE with Chromium engine.

I have troubleshooted this for months with Jetbrains’ support, but they tried the only image/OS that the plugin works on which is RaspbianOS (on a RPi5 or lower), and it works, which I can confirm. It also works on the official Ubuntu 22.x but not on the 24.x, just as Joshua’s releases. The support ended at that, leaving me greatly frustrated, having limited myself on my dev comp. (Rock 5B), to one OS, which is Joshua’s Ubuntu 22.04 LTS, which still has many bugs. And my RPi5 (and 4B) are simply too weak to develop on PyCharm.

The question of logs. I know enough to use the commands ‘sudo dmesg -H’. The output does not tell me very much (or rather, what is normal, and what is not). I am aware of sudo journalctl -xe(f). And recently I’ve learned to make use of the serial console through a Raspberry Pi Debug Bridge. I also get a lot of logs from the IDE itself (PyCharm), but that is even more difficult to interpret as experience and knowledge in preferably Java and the IDE itself might be a prerequisite. All of these logs I would be more than happy to provide, and see as a great learning experience in eventually becoming a junior developer in this area (my knowledge is primarily Python and Bash basically). Provide me with what flags and options to use in combination with getting the logs and I will happily provide them, and see it as a learning experience. Jetbrains gave up on me. :frowning: Here’s the support ticket URL for some pictures and background to this story.

I want to add that switching the plugin’s task description (which is the one missing in JCEF) to something called Swing, in PyCharm, renders the raw text, but not acceptable enough. It is like watching an html source page without the whissle and bells.

I understand this topic might be too specific. But for me, this is something bigger than that. It is the evolution of ARM64 on a big development environment like PyCharm, on the only device that can pull the weight of a heavy IDE like PyCharm. And in a bigger perspective, there is something really fishy going on, as every major latest OS release is slowly breaking functionality that goes unnoticed, but that has worked in the past. This might pose consequences in other areas later on unimaginable for the time being, but critical in the future.

My URL for the ticket at JetBrains’ support for pictures: https://youtrack.jetbrains.com/issue/EDU-6812

I will register at Armbian as a noobie, in development. :slight_smile: Do you want me to recreate a post there and under which section?

Yes, sadly it remains too specific for me, but perhaps someone in (larger) community is sharing your problem and came further. This is the point of forums and that’s why I have asked you to provide some background. Without its impossible to proceed, with this, there are only better chances - good luck.

This is quite typical for FOSS world.

Nobility ends with resources. Most of distros, you are mentioning, are not official one-man amateur developer and with complete absence of dev budget. If problem requires more then one day or some very specific know-how, like in this case, its close to impossible to resolve it. Only luck is that someone in community is sharing your problem and came further. So you both come together and resolve it. And once someone fixes this, one has to stay behind to maintain this functionality as otherwise it is just a matter of time when it will fail again. Software needs maintaining or it starts to fall apart - we (Armbian) does this job at low level, provides constantly evolving build framework that provides higher maintenance standards, so that board basic functioning, like successful booting, basic functions continue to work, builds are reproducible. Each device is specific problem and we already can not cover full support for all that exists (hundreds) but “just” <50. Even with lower number it is heavily frustrating as users expectations are just insane and way way above contributions / donations.

The case you have - until this problem is not fully understand and maintained - using some specific image that, what you need works by some random luck, contains other bugs that will most likely never be resolved is IMO best what you can hope for. Probably distro hoppers trend developed (also) out of this - to find a distro (random assembly of free software) where thing you need works. Which is totally wrong, but probably the only way / much cheaper then understanding and fixing what is wrong.

Depends what you expect?

You are welcome to help. There is nothing official related to this, but if you start working hard on problems Armbian is dealing with (for you), if you join our common frustration, your problem would stand out. “Mare, that is maintaining our framework, is having weird problem” is what helps, opening a topic and telling what doesn’t work (usually without any context or logs) is easy. And does not stand out.

Expectations are bitch :slight_smile:

If you are looking at a amateur developer and long term maintainer that will cover this / something, that and more, while also providing one-man Linux distro, IMO winning a lottery looks easier :wink:

1 Like

I hear you. An honor to be talking to a lead mantainer of Armbian like yourself. I become more motivated by the day. I will try to study the posts on Armbian’s forum to get a feel of how I should rephrase myself. Thank you for your reply. The gut at Jetbrains came with some insight just the other day that is a clue to something larger.
Sviatoslav Naiden

Commented 3 days ago

Sviatoslav Naiden

Commented 3 days ago

@Marat Matourin your problem is about your OS. Please, check the last comment in JBR-5171. There is the same problem in the logs as you have JCEF_E(31:24:095): Can't load libcef, error: /home/user/pycharm-professional-2024.1.4-aarch64/pycharm-2024.1.4/jbr/lib/libcef.so: /home/user/pycharm-professional-2024.1.4-aarch64/pycharm-2024.1.4/jbr/lib/libcef.so: cannot allocate memory in static TLS block . You should wait for the fix in the chromiumemedded repo https://github.com/chromiumembedded/cef/issues/3616.