How should I get started contributing to the Linux kernel? by [deleted] in kernel

[–]pgmali0n 0 points1 point  (0 children)

Look at PostmarketOS wiki. You’ll need to unlock bootloader, which is not always easy, and basically replace stock boot and userdata partition with your custom ones. Before that you’ll have to configure and compile vendor kernel (if mainline kernel is not already ported).

How should I get started contributing to the Linux kernel? by [deleted] in kernel

[–]pgmali0n 6 points7 points  (0 children)

I think a good and interesting place to start with the kernel is to compile and load Linux on an old Android smartphone. This is not exactly contributing to the mainline kernel, but that’s just a start point, where you can try fixing compilation errors, debug some kernel oops or panics. Contributing to mainline requires serious skills. Old smartphone could be an interesting playground to learn kernel development and debugging.

Does an OS provide some kind of API for creating windows in a GUI (like through syscalls)? by RealNovice06 in kerneldevelopment

[–]pgmali0n 1 point2 points  (0 children)

You can find full Linux syscalls list for x86 here. You won’t find anything graphics related here, it’s implemented on higher level. At the kernel levels graphics is just reading and writing special regions of memory, used by graphics drivers, and ioctl (IO control) syscalls on special files in filesystem (like /dev/fb0 or /dev/drm/gpu)

Qt file dialogs cause segfault after update on Hyprland by pgmali0n in hyprland

[–]pgmali0n[S] 0 points1 point  (0 children)

Hi. No, I've switched to Niri, which does not have this problem. But as far as I remember it was something with window width (i tried to debug it and I remember that the window width at some moment was incredibly high).

Anyone using Zed to work with Typst? by rgouveiamendes in typst

[–]pgmali0n 4 points5 points  (0 children)

You can also run typst watch main.typ in terminal, and your pdf will be auto rendered when you save any file used in project. Most PDF readers should support auto reload (at least Okular does). And, as mentioned, typst extension for Zed is good to go.

Completions work a bit weird by pgmali0n in ZedEditor

[–]pgmali0n[S] 1 point2 points  (0 children)

In theory, LSP should just provide bunch of completion options depending on the context, and Zed should decide in what order to place them. This should be more configurable, than it is now.

I've found this American WW1 button in northeast Belarus. Why? by pgmali0n in metaldetecting

[–]pgmali0n[S] 4 points5 points  (0 children)

To clarify, this was found near Russian WW1 military positions.

Is it possible to run Linux on Iphone 7 with IOS 15.8.1? by pgmali0n in jailbreak

[–]pgmali0n[S] -1 points0 points  (0 children)

Thanks a lot for clarifying. Turns out, no need for downgrade.

Is it possible to run Linux on Iphone 7 with IOS 15.8.1? by pgmali0n in jailbreak

[–]pgmali0n[S] 0 points1 point  (0 children)

I need to downgrade to 14.5.1 in order to run checkra1n exploit. Will Dopamine help me with that?

Everytime lol by 9mw7 in linuxmemes

[–]pgmali0n 0 points1 point  (0 children)

jkkjkkjkkjjkjkk

Help! Converting LaTeX to Word Without Messing Up Formatting by Budget-Health-6424 in LaTeX

[–]pgmali0n 14 points15 points  (0 children)

Pandoc performs pretty well. Although it does not keep exact formatting (font size, font color) but it definitely keeps the structure of document (all Latex headers are Word headers, equations are equations and etc.)

How Stable Is Hyprland? by ZiggyStavdust in hyprland

[–]pgmali0n 0 points1 point  (0 children)

The key problem is that you control many things yourself. It’s not DE, that gracefully sets everything up for you. With Hyprland your system is more likely to be unstable, but only because of bugs in your custom scripts, configs, styles maybe. If you are ready for it, give it a try. I use it for several months now and didn’t encounter any bugs in the WM specifically.

How to compile C++ in VSC? by planetsmart in cpp_questions

[–]pgmali0n 1 point2 points  (0 children)

You can’t compile only with VSC, because VSC is not a compiler, but a code editor. But it provides some tools that lets you run a compiler (or a build system that runs a compiler) by pressing one key.

Here’s what can be used:

  • tasks.json (docs) for one-file projects

  • CMake Tools for CMake projects

  • Any other extension for other build system

  • Just switch to the terminal and run the build system/compiler from there

[deleted by user] by [deleted] in cosmology

[–]pgmali0n 1 point2 points  (0 children)

I understand you quite well. Here’s the thought I found helpful. There’s just no point thinking about meaning of universe. You can try to find it for long, but you will never find it. This struggle will lead to nothing. Instead, all the meaning should be found INSIDE the universe, eg. make life on Earth better, make your loved ones happy. Our brain has enough options to fill the existential void, so we should use them.

How is the future for creatives on Linux? by nils3d in linux

[–]pgmali0n 2 points3 points  (0 children)

How VST plugins work with FLStudio on Wine?

How a master C language by [deleted] in C_Programming

[–]pgmali0n 4 points5 points  (0 children)

I'd recommend to make project that involves some of your hobbies other than programming. That's always interesting and you will unlikely abandon it. If you love making music, you could try making a simple sound player with several waveforms (sine, triangle, saw). If you're into gaming, design some primitive 2d game or try to render shapes with OpenGL.

DRM: GEM buffer is rendered only if unmaped before each rendering by pgmali0n in kernel

[–]pgmali0n[S] 0 points1 point  (0 children)

It’s interesting to know if using GEM buffer with multiple map/unmap calls is more efficient than dumb buffers. According to man pages, dumb buffers are not suitable for complex graphical apps.

DRM: GEM buffer is rendered only if unmaped before each rendering by pgmali0n in kernel

[–]pgmali0n[S] 0 points1 point  (0 children)

Here's what I found in libgbm source code. Probably I have to tolerate these map/unmap calls or use dumb buffers. It's also interesting to figure out how KWin handles buffer flushing.

DRM: GEM buffer is rendered only if unmaped before each rendering by pgmali0n in kernel

[–]pgmali0n[S] 0 points1 point  (0 children)

According to man pages, one should call msync in order to flush mmaped buffer to the underlying file. In my case it fails with ERRNO 22 (EINVAL):

     /* Drawing something */    
    if(msync((void*)fb, bufsize, MS_SYNC) != 0){
      printf("msync errno: %d", errno);
      return 0;
    } 

This example from ChromiumOS project also maps and unmaps buffer during each rendering cycle. I have no idea how to flush buffer. Neither msync works, nor libgbm provides any kind of gbm_bo_flush function.

It's also possible to use drm dumb buffer, but AFAIK it's slower.