vhyrro

vhyrro

@vhyrro.neorg.org

A programmer. Can someone build me a hut in the woods pls. Lead dev of: - https://github.com/nvim-neorocks/rocks - https://github.com/nvim-neorg/neorg

66 followers10 following80 posts

Tired of CLI tools having difficult to understand errors? Me too! That's why Lux is getting a huge overhaul of its error system to make it as friendly as possible. System is a work in progress - by the end I want any newbie to be able to try the CLI and immediately be guided towards best practices.

Shoutout to the Neovim devs for 0.12.0, it's all good steps towards making the editor even better for beginner users and for me who can now run :restart 500 times a day

I've finally done it. The sandboxing refactor for Lux is done, after a lot of long winded planning and rewiring the codebase. Now for the tedious cleanup phase 🔥

The sandboxing refactor for Lux is much larger than I had anticipated! The PR will be large but the upside is that packaging the project will become much easier as we will be able to ditch mlua as a dependency 🔥🔥

I am currently making a serious attempt at implementing sandboxing in Lux. Due to the way the ecosystem is structured, rockspecs (instructions on how to build a Lua project) are themselves Lua files. This means that they can run unbounded and arbitrary code.

If all goes well, Lux will be hardened against an attack like this by limiting execution time and restricting access to I/O and the capacity to load dynamic libraries at runtime.

Additionally, Luanox support in Lux will further enhance security by using a service with stronger API keys and no manifest files. Ideally, we will one day incrementally upgrade to TOML rockspecs instead of dynamic Lua files (which bring nothing useful other than security issues).

vhyrro reposted

Designing for mobile-first in frontend development is fun... Until you come across mobile devices that for some reason have a viewport width less than 365 pixels. In some cases, they completely break CSS and you have to deal with edge cases. Why don't companies make phones with a viewport standard?

I'll never stop yapping out the jujutsu VCS. It's such a good tool and has entirely replaced Git for me, tbh. Even for the most simple of operations I find jj to be much more ergonomic. You also get the op log for free! :D

I'd like to take a moment to appreciate FOSS. For all the craziness that goes on in communities every day the fact that we can all reap the benefits of freedom in both senses of the word is really remarkable. After using FOSS for several years I've really forgotten this simple fact.

I personally find the #neovim 0.12 plugin manager to be severely overhyped. It's great to have a standard interface for more sophisticated wrappers to step in, but it's still very basic. Users will end up on a wrapper plugin anyway. The best thing vim.pack is good for is bootstrapping other code.

I get that wanting to make a minimal config is a tempting idea, I love myself some minimalism, but in the case of a git-based plugin manager you're only losing quality of life features without much in return. Hoping to see some cool wrapper plugins around vim.pack soon.

Github OAuth is amazing. In the oauth data, username is called "nickname", and the nickname is called "name". definitely did not cause any headaches :p

Hooked up all the logic to the page for API keys. I'll be releasing the page for beta testing to the public soon. It'll be a big test for the OAuth flow and key generation code :D

Alright, settings page is fully designed and ready to roll 🔥 This one will definitely need further touch-ups before the final release, but I'm happy with it as is for now :) Next up, the page that generates API keys 🚀

Alright, the MVP package page is ready 🚀 I'm already done with the backend endpoints, which are much more convenient to use over luarocks.org, and they sure as hell don't encode the API key in the URL itself ☠️ I guess the next natural step is to create a "legacy" API which is luarocks-compatible

Putting in my full effort into finishing Luanox so it can finally hit production. First off, I revamped the landing page! Things left: - Ask the user for email if OAuth didn't provide it - Search functionality - Package view page - Plenty of touchups and more API endpoints Exciting stuff ahead 🚀

Lux update: I've been generally away and working on some private projects, but Marc's been creating a bunch of commits and fixes to Lux, so I'll be enumerating his work and showing it off in future posts! It's high time that I return to writing some open source :)

"Folke is travelling" brothers in Christ he got so fed up with your github issues that he's currently taking lessons from Liziqi on how to build his own house somewhere in the Alps

I'm about to do the unthinkable - install Neovim nightly. I've been all about the stability for the past 9 months but I think it's time to move over to the unstable world for a bit again :) Hoping this will rekindle my passion for Neovim as well as give me a playing field for the upcoming lux.nvim

I've recently been wondering about what Neovim features I'd love to see most that aren't present, and it's definitely: - Minibuffers (many smaller buffers in a big buffer) - Keybind namespaces (to allow overriding of all of Neovim's keybinds) - Native luarocks support

It always baffles me how it feels like I haven't uploaded in 2 weeks but I check the dates and it's several months. I'll try to fill up a backlog of videos tomorrow, edit them in the following days, and go from there! I would also like to become a sort of news source for things going on in Neovim.