Skip to content

Alec's Home

Home header icon SWR Posts header icon About Me header icon Main website header icon (external link)External link icon

Hey!

I'm Alec (also known as AmazinAxel online), a full-stack web developer and programmer of things on the Internet.

Welcome to my personal site, or home on the Internet! I like to blog about things and make cool projects. I'm very passionate about what I do and I love giving back to the Internet in the form of open-source projects.

The posts below are my most recent announcements. If you want to learn more about me or what I do, head on over to my other site at AmazinAxel.com.

Discord screensharing on NixOS + Hyprland

One annoying thing about using Wayland on Linux is poor Discord screensharing support. Some Wayland compositors have ways of working around this and fixing Discord themselves. Unfortunately, Hyprland doesn't have an offical patch so I've created my own for the time being.

In NixOS, you can use the environment.sessionVariables.NIXOS_OZONE_WL = "1"; config option to force all applications to use Wayland. When using the offical Discord application with Wayland support on Hyprland, the screensharing menu doesn't even show any windows. Without Wayland (using xwayland) the windows appear black with an 'x' in the center. Some users reported that you are able to share xwayland applications using the xwayland Discord app, but not even this works for me. There have been many complaints to Discord about fixing this, but it doesn't seem like they really care. This is my workaround:

Firstly, install Firefox (specifically the firefox-unwrapped package in nixpkgs). Edge or other Chromium browsers won't work! Next, add the following to your nix config under the environment.systemPackages = with pkgs; section:

(pkgs.makeDesktopItem {  comment = "Voice and text chat application for gamers (patched for Wayland)";  desktopName = "Discord";  exec =  "${pkgs.firefox-unwrapped}/bin/firefox --kiosk https://discord.com/channels/@me";  genericName = "Voice and text chat application for gamers (patched for Wayland)";  icon = "discord";  name = "discord";  startupNotify = true;  startupWMClass = "discord";  terminal = false;  type = "Application";  mimeTypes = [ "x-scheme-handler/discord" ];})

This will make the application visible in your application launcher. It basically just launches Discord as a fullscreen standalone application through Firefox. Next, add this to your Hyprland config (this is without home-manager):

windowrule = suppressevent fullscreen maximize,^(firefox)$windowrule = fakefullscreen,^(firefox)$

Now, you should be able to start Discord as normal and start screensharing! It should feel almost as native as the offical application. However, there seems to be a minor bug where the screenshare popup occurs three times. Simply exit the screen twice and then select a window and it should be fine. Note that audio won't be shared. Hope this helps!

NOTE: I haven't tested this without xwaylandvideobridge installed. There is a possibility that this method will only work with this application installed, but try without it first!

Clock icon

Apr 23rd, 2024

Linux

Shootout Minecraft Server now open source!

Earlier this year, I went on a mission to create a new personal game jam to get a Minecraft server completed in just one week. I was part of the Xenon beta testing group, and I wanted to get a new game completed so players would have something to play when Xenon gets released. I settled on a Wild West themed gunslinger minigame, now called Shootout (originally called EggDuels, but changed due to popular opinion). I spent that one week spending hours each day grinding development of the game, and spent another week polishing and adding features due to the Xenon release date pushback. The first beta test was unsuccessful; it was plagued with bugs and issues. I did another re-test later that day, which turned out to be successful.

During the Xenon release, it was popular and many new players tried the game. Unfortunately, it had a very poor player retention rate and the game died quickly. I lost motivation after adding 2v2 support, and the game lost its playerbase.

As the game is now dead, I have decided to make the game open source for anyone to view, use, or improve upon. It's fully functioning and contains useful reference code. Check it out!

View the GitHub source code here.

Clock icon

Apr 18th, 2024

New

The plans and the future of Permafrost

I began working with Hope it Works studios (HiW) to create this new game two months ago. After long hours of endless work on this game, it is with happiness that I announce Permafrost's expected out-of-beta release early July. If you haven't heard yet, Permafrost is a new winter survival game where you must survive in a post-nuclear world with few resources and hostiles galore. Development is about 60% done in most aspects, so all the basics of the game are complete. The only steps left is to ensure playability, fix bugs, optimize mechanics, and add more content. Due to myself moving for the next few weeks, I must provide adequate time to work on the game so I don't release it with bugs.

Additionally, Xenon has been acquired by Minekeep, so it should be noted that all my future games will be on Minekeep rather than Xenon. I will be posting a new sneak-peek of what it'll look like on the Minekeep and SkUnity discord communities soon! In the meantime, be patient and stay tuned!

Clock icon

Apr 5th, 2024

Permafrost

Archived site is now open source!

For many years, throughout 2019-2024, I have always kept my website's source code unavailable. Because I no longer have a place to host my previous site's content or any purpose for the code, I've decided to make it open source for anyone to use or view.

It includes the source code for AlecsCP, my old panel, and some of my old blogging systems and my old CMS. I've removed my personal content from it and removed other sensitive files. Feel free to check it out and use it!

Click here to view the source code on GitHub.

Clock icon

Apr 4th, 2024

New

Archive site deletion

The archive of AmazinAxel.com, available at old.amazinaxel.com, is fading away. The old website is hosted on Hostinger, to which we are letting the plan expire and old.amazinaxel.com will vanish into digital oblivion.

The archived site is what AmazinAxel.com used to look like before the migration and revamp. It will continue to stay up until midnight on April 3rd. See it now before its gone forever!

Clock icon

Apr 1st, 2024

Announcement