• Activity
  • Votes
  • Comments
  • New
  • All activity
    1. Actually useful MCPs

      I'm a web developer and find the playwright MCP to be genuinely useful. My LLM is able to navigate my site, measure the size of elements, see console errors, network requests, etc. This is the...

      I'm a web developer and find the playwright MCP to be genuinely useful. My LLM is able to navigate my site, measure the size of elements, see console errors, network requests, etc. This is the only MCP I've ever installed and haven't yet had any cause to use others. But I'm interested in hearing what other professionals are using.

      24 votes
    2. What programming/technical projects have you been working on?

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's...

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's interesting about it? Are you having trouble with anything?

      8 votes
    3. What programming/technical projects have you been working on?

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's...

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's interesting about it? Are you having trouble with anything?

      16 votes
    4. Any fellow XCP-ng users here?

      Got invited to Tildes tangentially through a server hosting project but realized this space might be outside the standard tech echo-chambers (techo-chambers?). Am I the only XCP-ng/Xen user in a...

      Got invited to Tildes tangentially through a server hosting project but realized this space might be outside the standard tech echo-chambers (techo-chambers?). Am I the only XCP-ng/Xen user in a sea of Proxmox/KVM? Any odd homelab setups to share?

      17 votes
    5. What programming/technical projects have you been working on?

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's...

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's interesting about it? Are you having trouble with anything?

      12 votes
    6. What programming/technical projects have you been working on?

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's...

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's interesting about it? Are you having trouble with anything?

      16 votes
    7. What I learned building my first custom water loop

      This weekend, I've fulfilled a long dream of mine and upgraded my computer to a fully custom waterloop. This is, for a number of a reasons, a complicated process, and outside of general advice,...

      This weekend, I've fulfilled a long dream of mine and upgraded my computer to a fully custom waterloop. This is, for a number of a reasons, a complicated process, and outside of general advice, it's difficult to provide an exact guide on how to do this. Custom waterloops are, well, custom. They depend mostly on what computer case you use, and what sort of reservoir and such you've bought. As such, my advice can also only be general.

      Plan ahead

      Check online for custom watercooling builds in your case. Use those as a guide for radiator and reservoir placement. Sketch ideas out on paper. Measure out the places inside of your case where you intend to place components. Check the your pc case manual, those very often contain info on where you can place radiators and reservoirs.

      Some cases are ill-suited for custom waterloops. Consider buying a new case rather than building in an old, ill-suited one. It will save you a lot of pain.

      Some cases require modifications. I had to cut into mine with a metal saw to make space for a radiator. Minimal material was removed from the frame, invisible after the case is put back together. I also had to drill into it to place the reservoir. The holes case manufacturers place for reservoirs are best-effort guesses. Unlike for fans, and thus radiators, there are no standards for reservoirs.

      Do not rush

      Expect a marathon, not a sprint. There will be setbacks. My process, setbacks and all, took me 3 days. And I still fucked up assembling my GPU. The die has bad contact and I'll have to drain the loop, pull it out, disassemble it and put it back together again. A lot of this was also spent waiting for next-day deliveries to show up because I'm dumb and was missing things.

      Prefer soft tubing, and do not go for PVC

      There are no performance benefits to hardline tubes, and they are a bitch to measure, bend and cut precisely. That 95° angle that was meant to be a 90° is going to be evident immediately, and forever. Soft tubes are forgiving, easy to put into the system and much more time efficient. They also do not require extra equipment dedicated solely to bending hardline tubes. Think about where your build is going to sit. On the floor? Who gives a shit how it looks?

      Edit: if you opt for soft tubes, don't get them made from PVC. They very often leak plasticizers into the loop that gunk up your components and reduce performance. You'll need to swap them after some time and they also tend to harden. To minimize maintenance, go for EPDM tubing. It's black instead of transparent, but it's better in the long term.

      Custom waterloops are all about you, and if you insist, then you do you. Hardline tubes are the endboss of all pc builds. Be ready for a challenge. Conversely, some folks really want transparent soft tubes. Just know what you're getting into.

      Tube sizes

      The standard soft tube is 13 mm outer diameter and 10 mm inner diameter, or 13/10. There's a ton of other sizes as well but remember even if the inner diameter is larger, liquid flow improvemets are going to be marginal. Different sizes also need different fittings.

      Respect the crink

      Soft tubing is a breeze to put into your system, but don't make those corners too tight or it'll crink and cut off flow. Check this especially when you close up the panels of your pc case. Tubing is cheap, comparatively. Don't be afraid to use more than you need.

      Money

      Custom water loops are pricey. Full copper radiators start at 100€, water blocks are usually hundreds as well, with the tubing, fittings and all it's normal for cooling equipment alone to account for a grand. You're bolting an aftermarket cooling system onto your PC that will turn it into a racecar. A lot of that is finely machined copper. It costs.

      Remember the extras

      Ya know how I said that I needed to order some extra things last-minute? Thank fuck for Amazon and their fast deliveries. If you live in a larger city, there's also a good chance a specialist computer store somewhere might have what you need.

      Leak tester

      Those are small air pumps with a pressure gauge. You close of all ports and then pump air into the system, 0.5 bar maximum (!!!), and wait 60 minutes. If the pressure is maintained, congratulations, your system is air- and thus watertight.

      Test your individual components before you put them into your case! This way, you know that the components themselves are tight, and you avoid having to pull out a radiator after screwing it in place because you forgot to tighten that one end cap you can now no longer reach. Ask me how I know.

      Also test our loop when it's fully assembled. Should you have a leak, divide your loop into two halves and leak test those. Repeat (divide into halves and test) until you have located the leak. If you have tested your comps individually before, it's going to be a radiator fitting you forgot to tighten or your reservoir top 99% of the time. Have a book or a podcast ready because this is a long process with lots of downtime.

      Motherboard 24-pin jumper plug

      These nifty little things are incredibly cheap and useful. After you wire everything up, you want to fill your reservoir and turn on the pump, but obviously you do not want to immediately electrify your entire system. So you pull the 24-pin motherboard cable of your motherboard and put the plug into it. It bridges specific pins, tricking your power supply into thinking a motherboard is connected. This way your pump turns on without the rest of your system. Once the water is circulating and not catastrophes have occured, you can turn off your power supply and plug the mobo back in.

      Common advice

      This is advice that's often repeated in watercooling circles for beginners. If you're seriously considering doing this, you will likely already have stumbled upon these. I'm adding these just for posterity.

      Do not mix aluminium and copper/brass

      Cheaper watercooling components are often out of aluminium while pricier ones are out of copper. You do not want both in your system as they eat each other through galvanic corrosion. If your cooling blocks for the GPU and CPU use copper (they very often do), the rest needs to be out of copper or brass as well, fittings included!

      Buy more fittings than you think you need

      Remember, per tube you'll need at least two! Check that they have O-rings, as those provide the seal.

      Put a drain port into your loop

      You should generally drain and flush the loop at least once a year. This will be a lot easier if on low points you have faucet you can attach a tube to and open to drain it. Pulling the loop back apart is generally the last thing people think off when building a custom loop for the first time, so it's useful to know.

      Consider quick disconnects

      Quick disconnects are special fittings you can put into a tube or attach directly to a port. You can then pull them apart with minimal or no leakage of your cooling fluid without having to drain your loop. Really useful for example the GPU, which tends to be the component that's swapped out most often.

      Use cooling fluids over distilled water

      Obviously no fucking tap water, ever! But lots of folks also gravitate to distilled water. Cooling fluids like what Alphacool or Aquacomputer make have extra stuff in them, like corrosion inhibitors and biocides that prevent algae build up. You can also mix these yourself if you can get the inhibitors and biocides concentrated but if you're on that level I don't think you need this guide anymore.

      Also, colored liquid fucking sucks. Unless you want to pull apart your water blocks and clean them with a toothbrush, use clear liquids. If you want fun colors, put RGB into your case.

      120 mm of radiator length per 100 W of heat generation

      The two components generating the most heat in your PC are likely the CPU and GPU. Check the specs of those to see how much heat they generate. This number is generally known as the Thermal Design Point (TDP). Radiators come in many sizes fitted to fan sizes, mostly in multiples of 120 or 140 mm, but running this calculation gives you a baseline for how much radiators you need. More is always better! Fit in as many radiators as you can into your case, but if your case can't fit the number of this calculation then you need to look for a bigger case.

      Knowing the TDP is rarer for GPUs, you can also use board power or power draw as a substitute. We're doing napkin math here, no need to be precise.

      Example:

      CPU: 170 W

      GPU: 300 W

      -> round up to 500 W, which means 5 * 120 = 600. A 360 mm radiator fits 3 120 mm fans. You'd need 2 radiators with 3 fans each to cool your system adequately.

      Alternatively, a 280 mm radiator fits 2 140 mm fans. You'd need 3 of those to cool the system.

      Radiator thiccckness

      Radiators come in different thicknesses. Since what dictates a radiator's ability to dissipate heat is the total surface of it's fins, increasing the thickness improves cooling ability. However, most PC cases, even full towers, are practically limited to 45 cm rad height at most.

      Noise

      A big motivation for doing this was noise. Cooling everything with a custom loop means that I've lost the 2 fans on my CPU air cooler and the 3 fans on my GPU. What remains are the case fans only, 2x180 mm ones and 3x140 mm. Those can now run at dramatically lower speeds (10% fan speed at idle, ramping up much more slowly) for a nearly silent build even under full load. The pump and reservoir combo I've chosen are isolated from the pc case through rubber standoffs which means that the pump, even when at 100%, runs dead-silent.

      Chasing diminishing returns

      Switching to a custom loop alone is a massive bonus to the computer's ability to be cooled, because water is a much more efficient way to move heat than air. Case radiators also have much more volume than the heat sinks on your GPU and CPU right now, improving the cooling further.

      Once you step into this world, the choices open to you are staggering. Delidding the CPU. Using liquid metal instead of thermal paste, etc. etc. Unless you're planning on overclocking your system, there's no point to doing any of those things that are actively dangerous.

      Liquid metal buys you a couple of degrees °C at best, at the cost of being dangerous and difficult to apply and even a tiny escaped drop having the ability to short and fry your GPU for good.

      Delidding your CPU is only useful if you plan to overclock. I did it, but only because the company Thermal Grizzly sells delidded CPUs and a fitting water cooling block. If you're doing it at home, the investment is way too large to make sense. Delidding also requires liquid metal afterwards. See paragraph above for that.

      If you're in this just because you want a high performing system at less noise, then using a PTM material instead of thermal paste is going to be good enough.

      All of these improvements lower temperatures of your components. Delidding the CPU and cooling it directly buys you something like 20°C under load. But the thing is, a good water cooling loop can absolutely cope with a high performance CPU running at 100 per cent. With the IHS on it'll just push 80°C instead of 60°C.

      Functionally, there's no difference if the CPU runs at 60°C or 80°C. The only time it matters if if you're over clocking and through that causing the CPU to approach its thermal limit. Then dropping it by a few degrees makes sense.

      If not? Skip them.


      I hope these help people. Feel free to ask any questions!


      Edits in no particular order:

      Loop order does not matter

      PC custom water cooling loops are not car engines, and as such the thermal differences between coolant and components is much smaller. This means that having a radiator follow a component to immediately cool the water down is much less effective than just adding more rad volume. It also tends to make your tube runs messier and is overall not worth it.

      30 votes
    8. My week with a BC-250, or how I made a gaming HTPC with a chopped PS5

      I caught wind of the BC-250 after the Linux on PS5 post where @moocow1452 posted about them and shared a link. The BC-250 is an APU cut down from PS5s that didn't pass Sony QC, they were...

      I caught wind of the BC-250 after the Linux on PS5 post where @moocow1452 posted about them and shared a link. The BC-250 is an APU cut down from PS5s that didn't pass Sony QC, they were originally slated for waste but largely got picked up by crypto miners. I hadn't got myself anything for my birthday or promotion, so when I found a deal, I grabbed it for the HTPC I'd wanted but couldn't justify. (Long post, tl;dr at end)

      Specs:
      6-core AMD Zen 2, stock clock 3.5GHz
      AMD custom GPU, stock clock 1.5GHz*
      16GB unified GDDR6 RAM+VRAM
      M.2 2280 slot
      *Stock lock is weird and limited, will discuss

      I'm not sure exactly when they got proper Linux support or folks started using them for gaming but I'm definitely behind the curve. You used to be able to get them <$100 but now they seem to be going for $180. I found a "pre build" for $275 shipped that had it ready to go, including a case, cooling, PSU, 256GB SSD, and unlocked BIOS... this isn't too far from what I would've totalled had I gotten the board for ~$80, and saved me some headaches. While the seller pre installed Bazzite, no way was I trusting the OS installed by a random eBay seller.

      So what's it take to make one of these usable, what trouble did the seller save me? Let's start with the BIOS -- this needs to be unlocked by flashing though I'm not totally sure if it's required to use it at all but at the very least it unlocks the dynamic 512mb VRAM. 16GB total is kinda limiting today and the default split is 8/8 RAM/VRAM -- a static split isn't exactly ideal -- depending on your game, you could easily be maxing out one with unused of the other. The dynamic 512 reserves only 512mb for the GPU alone and allows the rest to be properly split as needed (mostly, there's still technically a VRAM cap that can be raised with kernel parameters).

      OK next saved headache was the cooling. See, these were built as server units with fans set to blow air through them. The heat sink fins are closed off on the top. One can print a sleeve to have a standard fan push air through, but opening the fins up and letting the fan push air through from the middle is more effective, more like your typical consumer GPU. Seller did a messy job, but it is opened in the middle. Some folks use 2 fans and fully open the fins for a cooler/quieter build.

      The final headache was minor but they saved me from sorting out the PSU and power button. Since the board is powered just by 8 pin PCIE, for this PSU, two pins on another header need to be shorted to stay powered on, seller already had this in place. Seller also soldered power and reset buttons to the board.

      So with the hardware sorted, what does the software end look like? While it can technically run Windows, but it does not and will not have GPU drivers -- though folks have added external GPUs. The main 2 OS options folks recommend are Bazzite and CachyOS. Folks say Cachy is better but benchmarks I saw weren't that compelling, I already use Bazzite and it seemed to have less extra steps so I went with that, standard installation process went smooth and it was basically ready to go from there... So why am I futzing around so much?

      Well, the dynamic VRAM can collide with the default ZRAM swap, causing crashes and other errors. So I went through disabling that, enabling ZSWAP, then tweaking config and kernel parameters according to community info. So part of my futzing was comparing speed and stability with the various RAM settings and swaps.

      So the next futzing was the GPU clock. The stock is locked at 1.5GHz over 920mV always no matter if load is high or low, but PS5 runs em around 2.3GHz and higher volts. There's a community governor that can decrease volts/clocks under light load and unlock the stock. Folks easily get 2.0GHz at 1000mV but some push 2200+ at 1150. So testing with that was more futzing around, playing in Expedition 33 for half an hour to see if settings were stable. I found the defaults to be fairly aggressive, causing artifacts and crashing. I disabled all their default points over 920mV, set one at 2.0/1000, and called it a day. Didn't feel like trying to squeeze out another 100MHz. Also boosted the bottom 700mV point up by 20 since I saw some graphical artifacts at low loads and that cleaned those up. (<700 locks it right back to stock parameters so that's the effective minimum)

      Next up is the CPU, stock has it at 3.5GHz at 1180mV. Folks have been able to get the same clock down to 1000mV, some mad lads pushing 4.1GHz and like 1.3V. There's another community tool for helping with this where you punch in a target clock, voltage, and temp, then it tests it out. I haven't settled this one out, I may go for a bit of an under volt to help keep it quieter/cooler since it's an HTPC, or may just leave it at stock. Folks also recommend disabling mitigations for Spectre/Meltdown as it significantly slows the CPU and you're fairly unlikely to need it for a DIY Steam Machine.

      So I was stumbling through this following the community wiki, it had some good and useful info, but it didn't seem entirely consistent and sometimes was just wrong. Turns out, it's an AI compilation of community info. I'd have saved myself a ton of trouble if I'd found this repo and followed their instructions as that's what I eventually found worked best.

      Expedition 33 was my main real world benchmark tool. With FSR+LSFG on medium, I was hitting 1440p@90fps, 1080p@45fps without. The site compares it to a 3060, I thought that was mine until I double checked and have a 3070. It does E33 with DLSS+LSFG at 1440p@120fps cap on medium, or 1080p@60-70fps without either. So while the .info site seems to accurately describe the GPU as similar to a 3060, their benchmarks seem to include scaling and/or frame gen based on my limited testing. However, E33 still looked bad and off compared to my Nvidia at the same settings. After a day of fiddling, I looked it up and turns out, E33 specifically looks worse on AMD.

      As for HTPC apps, Jellyfin flatpak works great. Official Plex apps are deprecated, both flatpak and snap, they run terribly. Girens (unofficial Plex client flatpak) seems to work well, but requires a mouse and sub menus don't work in big picture. I plan on using a PS4 controller (touchpad works as trackpad) for the time being so this isn't too big a deal, but it's definitely less polished than the Plex smart TV app. VLC with the network drive mapped so we can play direct from file as back-up. And finally VacuumTube for YT smart TV interface with ad blocking. Hardware encoding/decoding does not work and will not so it's all done by the CPU, but it was enough for my high bitrate 4k HEVC decoding test.

      It doesn't have proper sleep states. Can't wake from USB/LAN, power button only, and doesn't actually sleep CPU/GPU so it doesn't really save power in sleep. Shutdown/cold boot is inconvenient for a daily use HTPC. Estimated 60W at idle, about $6 a month left on 24/7 for us, perhaps an extra $50/yr compared to a box with proper sleep. However, most it can pull under load is 235W, less than a typical gaming PC. Not enough to realistically break even versus a gaming PC with proper sleep though, so it's probably an expense worth considering in comparison shopping for a similar usage.

      Final Verdict: do I recommend it? Honestly, if you're getting bare board for $180, maybe not, but also depends on who I'm recommending to. I seen someone on the discord selling them for $150, others may be selling too, perhaps prebuilts even. Between case, fan, PSU, and SSD you're ending up closer to $400 for a running build -- and that's before wifi/Bluetooth/controller if you don't have extras of those already. At that rate, you may be better off getting a mini PC + eGPU dock + older graphics card, but I'd need to shop around to see how their price:performance ratio compares. On top of that, you'll likely need to do the trouble the seller saved me. Getting the software going is fairly simple nowadays though, so long as you have the foreknowledge to just use NexGen's repo. If you're curious, do some comparison shopping between what you find for these versus a mini PC + eGPU setup. Don't forget to consider the cost of the BC250's idle draw if you don't want to cold boot each day/use. I wanted a machine that could be a media client, do some modest gaming, and to experiment with AMD and unified V/RAM. I ended up with one that can do that and some AA/A, so I'm satisfied, despite the quirks.

      13 votes
    9. Looking for a large collection of transcribed love letters

      I had this idea that is mostly a pun. I want to train a Love Language Model (LLM) on a large corpus of love letters and/or poems. Tricky bit is to find a large collection that is available. Any...

      I had this idea that is mostly a pun. I want to train a Love Language Model (LLM) on a large corpus of love letters and/or poems. Tricky bit is to find a large collection that is available. Any advice on sources of transcribed love letters?

      Edit: so far I've scraped a few website and downloaded a dataset from kaggle. I think it's enough for a just for fun project :)

      8 votes
    10. WIFI APs and other network stuff

      I need to overhaul my home network. I have a house on a lot that is ~60 meters by ~15 meters. my house is on one side and my garage is on the other, I have a little "studio" building in the...

      I need to overhaul my home network.

      I have a house on a lot that is ~60 meters by ~15 meters. my house is on one side and my garage is on the other, I have a little "studio" building in the middle.

      I had relayed the signal around with 4 google/nest wifi mesh things for a decade or so. but I always felt locked out without even a web interface, just the home app. and then two of them died at the same time last month.

      I ran some cable last weekend. Now I have 3 roughly equidistant wired switches wired together :House-Studio-Garage.
      My current plan is just 3 wireless APs at each. I have a wired only brume 2 that i can use as the router.

      I want to be able to have one SSID and roam between them. how well can that work without a mesh type network? just 3 good APs? My phone would stick to one before the mesh network. but that was a long time ago. Im hoping modern protocols might be better?

      We have teenage kids, lots of phones and laptops plus wireless home automation devices, shelly switches, wyze cams, smart bulbs, etc.

      I'm looking for something open source and as configurable as possible. I'm going in a linuxy direction lately and looking to have more direct access and control of my hardware. That's why I thought to ask here.

      Claude and co have recommended:

      Zyxel NWA50AXPRO
      Cudy AP3000
      Omada EAP670

      After I pick an AP I also need to pick a switch. I used the old 3 switches I already had on hand: TRENDnet TEG-S82g, Netgear GS105, Netgear FS108. All 3 are unmanaged and one is 10/100. so I want to replace at least the slow one. I'm thinking of getting a managed switch with POE for the switch that connects to the router. I want to try running POE cameras at some point. I want to be able to make a plex server, NAS, etc. Again, I want something flexible and I don't mind fiddling with it or paying a little more for decent hardware. I'm considering the Zyxel GS1900-8HP.

      Both the Zyxels apear to be openWRT compatable. which is something I may want to try.

      I generally don't keep up with this stuff. I've never went very deep into networking before. I wanted to check with some real people. Has anyone used any of these, or any other good wireless APs? Is there another strategy that would work better for my setup?

      Thanks for reading!

      11 votes
    11. What programming/technical projects have you been working on?

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's...

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's interesting about it? Are you having trouble with anything?

      17 votes
    12. Networking: DHCP+VPN, LAN communication query

      Preface: I know not what I talk about. INSTANCE: A Unifi network with multiple VLANs, each with their own subnet. A Linux client that is assigned to a single VLAN, connected to the network via...

      Preface: I know not what I talk about.

      INSTANCE: A Unifi network with multiple VLANs, each with their own subnet. A Linux client that is assigned to a single VLAN, connected to the network via Wi-Fi, and running a full-tunnel Wireguard config which tunnels data to the provider's endpoints.

      QUESTION: While running full-tunnel VPN configurations supplied by a commercial VPN provider, how might the client device talk with other devices on the same (local!) LAN as it is, including devices that are on a different (local!) VLAN, and thus a different subnet?

      Let's say, for instance, that I have the following network architecture:

      Name        Subnet          Gateway     Mask
      Internal    10.0.0.0/24     10.0.0.1    255.255.255.0
      Hosted      10.5.0.0/24     10.5.0.1    255.255.255.0
      Private     10.5.1.0/24     10.5.1.1    255.255.255.0
      Guests      10.5.2.0/24     10.5.2.1    255.255.255.0
      

      I have a device that is connected to the network via Wi-Fi, and is contained within the "Private" VLAN. It can also talk to devices that are in the "Internal" VLAN (by necessity), and devices in the "Hosted" VLAN.

      Once I spin the VPN up, using a configuration gained from OVPN / PIA / NordVPN / whatever, the client can still communicate with devices on the same VLAN as it- for example, if the client is 10.5.1.132, it can still communicate with 10.5.1.42, but it cannot communicate with, say, 10.5.0.11. One would assume that is because the DHCP server has told it that it can access devices within a specific range through the correct gateway- and in-fact, this shows in the IP routing table:

      Kernel IP routing table
      Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
      default         unifi.localdoma 0.0.0.0         UG    1024   0        0 eth0
      10.5.1.0        0.0.0.0         255.255.255.0   U     1024   0        0 eth0
      unifi.localdoma 0.0.0.0         255.255.255.255 UH    1024   0        0 eth0
      

      There are, as far as I can tell, a number of solutions for this problem. The first is to not use a full-tunnel VPN, and instead build a set of AllowedIPs which carve out the LAN ranges which you do not want tunneled. This, I think, is known as a split-tunnel VPN. If one wants to carve out all of the possible LAN IP ranges, as specified in RFC1918, it starts to become somewhat cumbersome:

      AllowedIPs = 0.0.0.0/5, 8.0.0.0/7, 11.0.0.0/8, 12.0.0.0/6, 16.0.0.0/4, 32.0.0.0/3, 64.0.0.0/2, 128.0.0.0/3, 160.0.0.0/5, 168.0.0.0/6, 172.0.0.0/12, 172.32.0.0/11, 172.64.0.0/10, 172.128.0.0/9, 173.0.0.0/8, 174.0.0.0/7, 176.0.0.0/4, 192.0.0.0/9, 192.128.0.0/11, 192.160.0.0/13, 192.169.0.0/16, 192.170.0.0/15, 192.172.0.0/14, 192.176.0.0/12, 192.192.0.0/10, 193.0.0.0/8, 194.0.0.0/7, 196.0.0.0/6, 200.0.0.0/5, 208.0.0.0/4, 224.0.0.0/3
      

      This might be the only solution that currently works on an Android device running the basic Wireguard APK, as found on Github.

      An alternative solution is to carve out the LAN ranges you want to avoid routing through the tunnel using the PostUp/PostDown entries. For example:

      PostUp = ip route add 10.5.0.0/16 via 10.5.1.1 [dev IFNAME?] [metric INT?]
      PostDown = ip route del 10.5.0.0/16 via 10.5.1.1
      

      This would work, on your local LAN, as long as you stay on the same VLAN and can connect to the correct gateway. Unfortunately, Android Wireguard cannot handle PostUp/PostDown entries, AFAICT. Small bother.

      One final solution that I have heard mutterings about is known as "Classless Static Routes", or DHCP Option 121/249. This uses "CIDR" notation, and I'll be honest- here I am a little bit lost. I like the sound of this solution, as it means that I can configure the networking infrastructure itself to provide the required information for valid routing, and not have to faff about with the many, many Wireguard configurations on my devices.

      Does anybody have any experience with this problem? Am I approaching this problem in an entirely stupid way? Is there a better way (insert infomercial here)?

      8 votes
    13. Requesting resources for learning Ruby

      Does anyone here have experience with Ruby programming? More specifically mRuby or DragonRuby for game programming? I came across DragonRuby as free for its 7th anniversary and I’m considering...

      Does anyone here have experience with Ruby programming? More specifically mRuby or DragonRuby for game programming?

      I came across DragonRuby as free for its 7th anniversary and I’m considering checking it out, but I have no experience with the Ruby programming language itself.

      Most of my programming experience recently is in C# and Python, but I have some experience with JavaScript/TypeScript.

      Does anyone know of good resources for learning Ruby coming from that background, or thoughts on if it is worth it to try to pick up?

      I’m not really interested in LLM-based Ruby workflows, at least until I have a decent grasp of the language and syntax myself.

      16 votes
    14. FFmpeg - Merging multiple videos containing chapters into one with chapters from originals

      Hello, I have quite some technical question and my DuckDuckGo-fu seems very weak on this one. I hope it is ok to post questions on Tildes, as it is not really discussion material... but someone...

      Hello,

      I have quite some technical question and my DuckDuckGo-fu seems very weak on this one. I hope it is ok to post questions on Tildes, as it is not really discussion material... but someone can still learn and use whatever come from this.

      I have Live Aid concert that I ripped from my DVDs and I wanted to merge the individual video files (there are four) into one long video. I'm on Linux and I'm used to ffmpeg in command line, though I do not know it that much. Each of the input videos has its own chapters and I would like to transfer those chapters into the final video as well. Preferably adding a chapter in between every input video.

      I was unable to find if ffmpeg allows for something like that in a single inline command. I may have to export chapters from each input video and add them into one "chapter" file and redo times by hand on them and then use this file as "chapter" input when merging the videos, but all this is just a theory on my part.

      Is there some FFmpeg expert here who has done something like that?

      EDIT: I made my own solution, see it in a comment a bit lower.

      12 votes
    15. What programming/technical projects have you been working on?

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's...

      This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's interesting about it? Are you having trouble with anything?

      12 votes
    16. What is your go-to project for learning a new language?

      Ive been playing around with learning a lisp language for a while, and I recently decided to go for it and learn fennel (as I already am comfortable with lua) just to see if I like lisps as a...

      Ive been playing around with learning a lisp language for a while, and I recently decided to go for it and learn fennel (as I already am comfortable with lua) just to see if I like lisps as a class. Normally, I try to do the first 5-10 days of a previous advent of code to pick up a lang.

      Setting up my advent of code environment got me wondering: what projects do other people use to learn new languages/tooling? Id love to hear how other people approach learning a new skill.

      33 votes