Hi all, I've started working on URHome Connect (UHC) which allows you to set up a 'client' website that your users visit in order to request access to your homelab. You run the 'admin' mode on your LAN which modifies the Opnsense alias that you've used to allow access for your users.

Attached image contains the concept of operations, as somewhat of a design.

It's in very early stages so calling it v0.3.1 in the releases tab might even be generous. It's functional, either installation through the binary or through docker, currently only have support for Opnsense and Pushover - if this gets a bit of interest then i'll work on expanding notification support.

You'll find some more info on the Codeberg link, but some goals of this project:

  • Simple setup and use
  • No Javascript (HTML + CSS Only)
  • Mobile / Desktop compatibility

I've not used AI to write anything used in the project, but have read some AI summaries while researching some topics i'm not fully across like CSS which has come a long way since i've touched it.

Really need the community input to drive the direction of UHC. The way I see it now is it serves my purposes just fine and happy for it to grow slowly and organically as needs emerge. There are still things I need to finish but figured i'd get it out there as soon as possible to hear what you all think.

Edit: add link to Codeberg

Codeberg Link - URHome Connect

Workflow for URHome Connect utility
 

Hey all,

I'm just curious what might be a good way to fund a new project? I've seen a number of projects use stuff like LiberaPay and PayPal etc, what about something in the form of Kickstarter? Subscriptions?

This isn't something I've ever considered before so not sure what the prevailing wisdom is out there. Say I want to get funding to start a project, those that donate get a lifetime subscription, but then also have an option for others to pay a monthly subscription? Is there any method in particular I should avoid?

 

cross-posted from: https://programming.dev/post/48635032

Hey all, Not long ago I shared my Artix Linux installer. I wanted to take it a little bit further (And learn some more Rust along the way), and make a companion site to make setting up the script settings even easier when wanting to run the installer - so here it is. Introducing the Lazy Web

This was developed using Rust, with Actix for the backend and egui + wasm for the frontend.

I had a few considerations when developing this, I wanted the encryption to occur clientside in the frontend in order to ensure your encryption password never makes it to the server. But also I wanted the decryption process to occur when the script downloads the settings. I also wanted the identifier that you use to connect and download the settings to be short and unique.

The website and the script are both still a work in progress, and i'm open to suggestions/feedback.

Edit: Just realized that I was returning the wrong URL to the codeberg repo.. so it probably wasn't working for anybody. Sorry!

 

Hey all, Not long ago I shared my Artix Linux installer. I wanted to take it a little bit further (And learn some more Rust along the way), and make a companion site to make setting up the script settings even easier when wanting to run the installer - so here it is. Introducing the Lazy Web

This was developed using Rust, with Actix for the backend and egui + wasm for the frontend.

I had a few considerations when developing this, I wanted the encryption to occur clientside in the frontend in order to ensure your encryption password never makes it to the server. But also I wanted the decryption process to occur when the script downloads the settings. I also wanted the identifier that you use to connect and download the settings to be short and unique.

The website and the script are both still a work in progress, and i'm open to suggestions/feedback.

Edit: Just realized that I was returning the wrong URL to the codeberg repo.. so it probably wasn't working for anybody. Sorry!

Artix Linux Installer (files.catbox.moe)
 

Lazy-Artix - CodeBerg

Hey all, just thought i'd share my Artix Linux installer script. I've wanted to give Artix a solid go, and decided to bring up my old Arch Linux install script to be used with Artix. I'm still working on it a lot and there is definitely some stuff in there that needs to be updated - but I'm pretty happy with it so far.

This is written all in bash, and is to be used with the base Artix Linux OpenRC ISO. Right now i'm focusing on getting KDE up and going, and then fixing up some of the bundles that can be selected.

It's nothing special - I started it years ago for Arch before the official installer existed, and only myself and a couple others have used it so it hasn't had a great deal of scrutiny. But anyway, just thought i'd share it.

(No AI has been used, also I migrated this over from GitHub so there are a few bits and pieces left over from that)

Edit: Just thought I should mention I sped up the video, the install actually took about 3 mins :)

 

Hey all Just getting started on some smart home stuff - I'm looking to get some strip lighting and there is a lot of stuff out there and honestly I'm not sure what I should get. Ideally it would be RGB but I'm OK with white/warm light.

The ZBT-2 can do both ZigBee and Thread, and I haven't got any pre-existing devices so I can go either of those.

I thought about getting some IKEA lighting because I believe they use Thread now?

What's the prevailing wisdom out there?

EGPU Enclosures support (programming.dev)
 

cross-posted from: https://programming.dev/post/45588710

Hey all, I recently got a new AMD GPU to replace my nvidia 3070ti - what's the support like these days for egpus on Linux? I'd like to be able to still use the 3070ti with my laptop (it has thunderbolt ports).

Egpu enclosures were basically a nonstarter on Linux a few years ago last time I looked into it, so not sure if thats still the case.

 

Hey all, I recently got a new AMD GPU to replace my nvidia 3070ti - what's the support like these days for egpus on Linux? I'd like to be able to still use the 3070ti with my laptop (it has thunderbolt ports).

Egpu enclosures were basically a nonstarter on Linux a few years ago last time I looked into it, so not sure if thats still the case.

 

Hey all, I've got an under powered laptop that I would like to stream Steam games to from my main PC (main PC has an AMD 9070XT, laptop has something like an Nvidia 1660). What I need to do is still be able to use my main PC while streaming to the laptop at the same time.

I've looked at solutions like moonlight, and I don't recall it worked very well or didnt support having a virtual display. I don't know that this is possible on Linux, but seems to be pretty easy to do on Windows.

What are my options here? Is it even viable to have a fully usable desktop while also utilising the GPU to stream games elsewhere?

Edit: ended up using Wolf and seemed to work perfectly. Certainly good enough to do what I set out to achieve, thanks for the recommendation.

 

This is a first for me. I've got some personal projects I want to work on, and I really enjoy programming. Normally first thing in the morning I'll spend an hour waking up, drinking coffee, and writing some code.

I'm a professional software developer, and software development is a passion and hobby. But I felt like I needed a bit of a reset so I've made an effort to not write any code at all during the Christmas/New Years holidays (about 3 weeks).

Honestly I don't feel like I've missed out, but I'm definitely looking forward to getting back into it and I think I'll benefit from it. Ill be back at it again next week.

I know 3 weeks isn't a huge amount of time in the grand scheme of things. Have you found yourself taking a complete break from coding? How did you find things when you had to start up again? Felt like it benefitted you or ended up losing the trail a bit?

 

Hey all, I've been contemplating what approach I should take in my app, think along the lines of mapping with lots of UI elements but also a 2D portal/window for showing the map etc.

I want it to be cross platform so thought I'd go with Egui and look at implementing the "game" parts to that. But as I thought more about it, maybe it would be more beneficial to use Bevy and rely on its UI framework.

Thoughts? Maybe Bevy would be easier, but might be too much of a hit on performance because its not a game that I'm making. Egui might be more difficult to add the game stuff, but more performant and not running a full game engine.

I'm really conflicted. It would be good to be able to turn off/disable the game part of it to reduce load if it isn't needed at the time

 

Hey all I'm working on writing an XMPP client and just doing some casual research. What would you say makes a client better than others? Cross platform? Native/web client?

I'm trying to decide if I focus on just a desktop client - which would reduce the scope, but it might be better to focus on a something more web based (I.e electron)

 

Hey all, just wondering if there are blogs or podcasts out there that cover common design patterns in Rust. I'm a Java dev and have tried a few times to get into Rust, but it feels like I'm solving problems in a way that aren't the most optimal for Rust because I'm still in that Java mindset.

Anyway I'm working on an XMPP client and my current challenge is working to implement some sort of event/listener system where I can trigger functions when I receive certain XMPP message types.

I put together a simple XML parser to deserialize (haven't done serialisation yet) messages which I can then determine the type of message it is. I was thinking maybe an event driven setup might work best here but not sure where to start in a Rust idiomatic way.

The idea would be we receive a Proceed message for TLS negotiation, this would trigger the tls_upgrade function which itself will send messages and need to react to the response as part of the negotiation step. But, again I'm not sure this would even be the best approach.

What I'm doing now is calling the tls_upgrade function which will do its own handling of sending a negotiation message, then looping on read_line on the stream hoping that the next message is the next needed message in the negotiation process.

So some advice on common patterns used in Rust in blog form or even podcasts would be a good learning resource.

Cheers.

 

Hey all, just hoping to get some advice on any software out there that can help me keep on top of all the VMs i'm running on my Proxmox instances, and potentially my other machines I have too.

I'm looking for a way to help me stay on top of updates and things like when the machine was last online, last rebooted etc etc. There are commercial products for such a thing, and I don't necessarily want to install any sort of Agent on each of the machines (if I can avoid it).

I looked at something like Homarr, but not sure if that's what i'm really after.

What recommendations do all you have?

 

Hey all, I know that switchable graphics is a thing in laptops where there is usually a single port. But how would you go about it on desktop? Do you put your monitor in the onboard HDMI or on the dGPU port? There are other issues associated with doing it of course, but I thought it might save on power and noise if I used the iGPU as much as possible.

Only have a nvidia GPU at the moment, but hoping to get an AMD 9070 at some point

 

Hey all, just got the 8BitDo Ultimate Wireless 2 and just wondering how I can update the firmware? I had a look around and not sure if the updater works under wine, I had a go but didn't seem to recognise that it was plugged in.

Any advice? I primarily got this to use with my desktop and Steam Deck - maybe the Deck can update the firmware?

Edit: had to use a windows VM, pass-through the USB, then update that way. Gyro and all the buttons are recognised on the Steam Deck.