KindaABigDyl

joined 2 years ago

All you need is HTML, Javascript, and CSS

[–] KindaABigDyl@programming.dev 11 points 1 week ago (2 children)

Fun fact, even tho B is False, Math.min > Math.max is true

[–] KindaABigDyl@programming.dev 42 points 1 week ago (1 children)

Big talk from AI who almost constantly generates syntax errors lol

[–] KindaABigDyl@programming.dev 183 points 1 week ago (5 children)
typedef struct {
    bool a: 1;
    bool b: 1;
    bool c: 1;
    bool d: 1;
    bool e: 1;
    bool f: 1;
    bool g: 1;
    bool h: 1;
} __attribute__((__packed__)) not_if_you_have_enough_booleans_t;
[–] KindaABigDyl@programming.dev 36 points 2 weeks ago (2 children)

I thought this was a post about the Rust programming language at first, and I was really confused

[–] KindaABigDyl@programming.dev 9 points 2 weeks ago (1 children)

I'm just waiting for the melee decomp to be finished

[–] KindaABigDyl@programming.dev 2 points 3 weeks ago

Who gets "The Giving Tree?"

[–] KindaABigDyl@programming.dev 4 points 3 weeks ago

I've had this in my .zshrc for a while: alias $(date +%Y)="echo 'YEAR OF THE LINUX DESKTOP'"

If you type the current year in your terminal, it will say "YEAR OF THE LINUX DESKTOP" lol

[–] KindaABigDyl@programming.dev 1 points 3 weeks ago (1 children)

Nah I definitely was giving stuff up to use Linux back in the day. Really, I'd say 2021 was when things got REALLY good.

[–] KindaABigDyl@programming.dev 10 points 4 weeks ago (6 children)

You appear to be afraid of spaces. Everything is cramped together.

Just bc you don't have to put a space after colons or after equals and commas and whatnot doesn't mean you shouldn't

Don't be afraid of spaces.

They make it easier for you to read your code when you come back later

[–] KindaABigDyl@programming.dev 4 points 4 weeks ago* (last edited 4 weeks ago)

Not if you think of forward as "towards you." It comes from Math. X is right, Y is up, and then when doing 3D, Z is out of the page, bc that's easiest to draw.

[–] KindaABigDyl@programming.dev 7 points 1 month ago* (last edited 1 month ago) (1 children)

They just seem kinda hacky and overcomplicated rn.

I was on NixOS for a while, which is sort of in this camp since the system build is deterministic an immutable, and I've had to switch away bc it's just annoying. Apps aren't made for immutability in mind, and sometimes when you (read: your OS) try to force them to, the burden falls on you to maintain it, not just the package maintainer. VS Code is a prime example. Some extensions just don't work right. It's not Nix's fault ofc, but that doesn't make it less impractical to use, so after 2 years away from Arch now, I've had to return.

Other immutable distros face similar issues.

On top of that, specific distros have reasons I wouldn't want to use them. I wouldn't use Bazzite, for instance, bc it is based on Fedora, and I won't use Fedora again. I liked Fedora when I used it, and it has things about it I like, but it has a glaring issue: anywhere it can be non-standard it is non-standard. For apps to run on Fedora there always has to have some weird location for a config file or a different way to install a program or some bug that only occurs on Fedora. Fedora be fedorain. That rules out Bazzite, Silverblue, etc. I call it the "RedHat Tax."

I wouldn't say I'm against an immutable distro tho; I just haven't found one for me yet. For now, BTRFS and backups + Arch are enough

 

Not sure if this is a good place to ask for help, but I have scoured the internet and no one has a solution, so hopefully this question helps me as well as others.

I'm trying to get my computer to run at its best when on Hyprland. I have an MSI Raider GE76 which has an Nvidia GTX 3080 Mobile and an Intel Tiger Lake CPU with integrated graphics.

I typically have an external display over display port, an Ultrawide 3440x1440@60Hz, and the internal laptop display is on eDP at 1920x1080@360Hz. Note tho that while I often have the dual screen setup, I do need to be able to go to just the Intel display. The Nvidia GPU drives all outputs (DP, HDMI, Thunderbolt) EXCEPT for the eDP which is connected to the Intel card.

On X11, I could use reverse prime sync to use the Nvidia card for everything and just have the Intel card draw whatever the Nvidia card renders. This worked well. Unfortunately there isn't anything like that for Wayland, and I don't have a hardware switch to put the eDP on the nvidia side of things.

This means that I have to use the default prime modes to run stuff on the nvidia card which makes the second screen incredibly laggy. Now, I can disable the i915 module and the external display becomes buttery smooth, but I can't use my built-in display (which means I also can't use the display when I'm not connected to the external monitor).

How can I get both to work well on Wayland?

Can I run the external display exclusively on Nvidia and the internal on Intel with Prime? That could work, but idk if that's possible.

What's the optimal way to set up an external display on Wayland with and Nvidia hybrid-graphics laptop? Bc right now I'm thinking of just going back to X11 and praying it gets enough support to live until I can get a decent Wayland config.

 

I created a little side project over the past few days, a new build system for C and C++: https://github.com/blueOkiris/acbs/

I've seen a lot of discourse over C build tools. None of them really seem solid except for (some) Makefiles (some Makefiles are atrocious; you just can't rely on people these days). Bazel, cmake - they're just not straight forward like a clean Makefile is, basically black magic, but setting up a Makefile from scratch is a skill. Many copy the same one over each time. Wouldn't it be nice if that Makefile didn't even need to be copied over?

Building C should be straight forward. Grab the C files and headers I want, set some flags, include some libraries, build, link. Instead project build systems are way way way overcomplicated! Like have you ever tried building any of Google's C projects? Nearly impossible to figure out and integrate with projects.

So I've designed a simplistic build system for C (also C++) that is basically set up to work like a normal Makefile with gcc but where you don't have to set it up each time. The only thing you are required to provide is the name of the binary (although you can override defaults for your project, and yes, not just binaries are possible but libs as well). It also includes things like delta building without needing to configure.

Now there is one thing I haven't added yet - parallel building. It should be as simple as adding separate threads when building files (right now it's a for loop). I know that's something a lot of people will care about, but it's not there yet. It's also really intended to only work with Linux rn, but it could probably pretty easily be adjusted to work with Windows.

Lay your project out like the minimal example, adjust the project layout, and get building! The project itself is actually bootstrapped and built using whatever the latest release is, so it's its own example haha.

It's dead simple and obvious to the point I would claim that if your project can't work with this, your project is wrong and grossly over-complicated in its design, and you should rework the build system. C is simple, and so should the build system you use with it!

So yeah. Check it out when y'all get a chance

 

I created a little side project over the past few days, a new build system for C and C++: https://github.com/blueOkiris/acbs/

I've seen a lot of discourse over C build tools. None of them really seem solid except for (some) Makefiles (some Makefiles are atrocious; you just can't rely on people these days). Bazel, cmake - they're just not straight forward like a clean Makefile is, basically black magic, but setting up a Makefile from scratch is a skill. Many copy the same one over each time. Wouldn't it be nice if that Makefile didn't even need to be copied over?

Building C should be straight forward. Grab the C files and headers I want, set some flags, include some libraries, build, link. Instead project build systems are way way way overcomplicated! Like have you ever tried building any of Google's C projects? Nearly impossible to figure out and integrate with projects.

So I've designed a simplistic build system for C (also C++) that is basically set up to work like a normal Makefile with gcc but where you don't have to set it up each time. The only thing you are required to provide is the name of the binary (although you can override defaults for your project, and yes, not just binaries are possible but libs as well). It also includes things like delta building without needing to configure.

Now there is one thing I haven't added yet - parallel building. It should be as simple as adding separate threads when building files (right now it's a for loop). I know that's something a lot of people will care about, but it's not there yet. It's also really intended to only work with Linux rn, but it could probably pretty easily be adjusted to work with Windows.

Lay your project out like the minimal example, adjust the project layout, and get building! The project itself is actually bootstrapped and built using whatever the latest release is, so it's its own example haha.

It's dead simple and obvious to the point I would claim that if your project can't work with this, your project is wrong and grossly over-complicated in its design, and you should rework the build system. C is simple, and so should the build system you use with it!

So yeah. Check it out when y'all get a chance

 

I'm making a game that takes heavy inspiration from Zelda games like Ocarina of Time, Wind Waker, and Twlight princess, i.e. OoT-lineage Zelda as opposed to BotW & TotK and games that stem from Link to the Past. It's not a fan game, of course, but if you like OoT/MM/WW/TP/SS, then you'll (hopefully) like my game.

One central aspect to nail is the camera system these games use. There's some variation, so I've picked one to "clone." I'm basing this camera off of Wind Waker's. It has a default mode where Link runs around the camera with left and right and pushes/pulls the camera with up and down. If you wait long enough, the camera will move to be behind him, and of course there's a Z-targeting mode that will force the camera to move behind him and let him strafe. Finally, there's a free camera mode that works like the camera in a lot of modern third person games.

In terms of movement, there's walking and running, but jumping is relegated to hopping across short gaps in these games, and I've implemented that system as well.

 
 

I have enabled the strongswan plugin for Network Manager via networking.networkmanager.enableStrongSwan.

I manually set up my work VPN using nm-applet, but obviously this won't come with me if I reinstall NixOS, so I'd like to set up the VPN using nix.

The problem is that networking.networkmanager doesn't seem to have any sort of vpn configuration system. How would I go about this?

view more: next ›