• 0 Posts
  • 20 Comments
Joined 6 months ago
cake
Cake day: February 19th, 2026

help-circle

  • A lot of folk decry Cloudflare as a terrible corp (and their AI push now involves the login page shunted to the side while 70% of the screen is a relatively blank section with some sentence about using their AI), but what is the non-3rd party alternative? Does one rely on sharing the IP instead? It is impossible to have public (non-family) traffic without a Cloudflare/Google DNS resolver right?

    Being on a standard ISP I cannot use a higher-level rDNS.


  • Nice that’s similar to my setup! As for a website hub yours looks neat, mine is plain as hell unless you’re a family member, thanks to Authelia – but making public info is on my todo list – I tried custom-building a website many years back and adapted that. (If anyone discovers security flaws please lmk, but I’m preeetty sure I did good)

    Gonna share mine :3

    • i3 6100 (2 cores, 4 threads), iGPU passthrough to a LibreELEC VM so I could finally replace the Google CCwGTV 4K*)
    • 24GB of RAM (16GB+8GB, mobo is ITX so that’s it)
    • RTX 3060 12GB (handles GPU-accelerated processing with GPU passthrough to Emby and LLM LXC’s)
    • 256GB Samsung 850 Evo SATA SSD for everything but media
    • SATA HDDs for media:
    1. Shucked Barracuda Pro 10TB
    2. Ironwolf Pro 20TB
    3. Ironwolf Pro 24TB
    • Proxmox 9.2.3, kernel 7.0.6-2 (not quite sure why it’s not using .14)
    \*

    I conspire that it was being updated to become weaker. Reasons:

    1. Menu got laggier;
    2. WiFi got real glitchy and wouldn’t connect on wake and I had to either:
    • d/c and r/c,
    • power cycle,
    • or forget the WiFi and reenter details in order to make it work

    And as the months went on reconnecting stopped working, power cycling stopped working and it stopped giving me a keyboard, instead prompting to “enter on your remote device” so my last remaining technique was to install the Google Home app, set everything up and use my phone keyboard to enter the WiFi creds.

    I conspired that as it was fine until recently and it went downhill so rapidly, that it must have been forced obsolescence and they’ll probably release a replacement device. Surprise – one month after I replaced it with Kodi, Google released the “Google TV Streamer 4K”.

    Once I can upgrade my 2017 flagship to a 2027 midrange I’ll be transferring the i7-7700K and the other half of the 2x16 RAM, and I’m in dire need of more storage so a 30TB Ironwolf is in my sights (but fuck, it’s 2x its pre AI-pocalypse price (aka Sep 2025).





  • Welcome to the club! It looks like the other recommended solutions have a UI for browsing as well, which is cool. As it is my ytdl-sub feeds into a library for Emby so I personally don’t need another UI, but it is tempting. Only issue I could see is the same one I had to fix: Some videos only had AV1 available, and support for AV1 encoding only begins at the very recent Intel Core Ultra and AMD 7040 CPUs. Without those even 720p playback is laggy af… I have an RTX 3060 at my disposal for HW transcoding but who knows if those YouTube archiver/players support it

    Edit: Just did some research, it seems that the other services don’t have support for HW transcoding or multiple users. And they are much more resource-intensive than ytdl-sub + Emby









  • lyralycan@sh.itjust.workstoLinux Gaming@lemmy.worldDistro Recommendations
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    2
    ·
    2 months ago

    I can recommend my experience - EndeavourOS. Based on Arch, it was built to come prepackaged with everything you need for gaming. Once install is complete it offers great choices for gaming and privacy programs. Almost everything on Steam is a Windows .exe so they are all run in a mini Windows filesystem through a top notch compatibility layer (called Proton, based on Wine) and to answer your question - yes, Steam Link is perfect on Linux. Lower latency than Sunshine/Moonlight.

    One thing I owned that you’ll have to sacrifice, unless you use the Gnome DE iirc - Wallpaper Engine. I exported every .mp4 from the files and run with Hidamari instead, but it’s not the same.

    And one caveat if you choose EndeavourOS - Budgie DE is borked a little bit so I switched to Cinnamon


  • I kept all my certificates separate - have I been wasting time with 15 subdomains each with their own cert and A record? I have wondered. And then set in my reverse proxy a single domain.tld cert for each entry? TIA.

    I wrote bash scripts to run via cron to keep my IPs updated, using Cloudflare API. It’s probably useful to other folk but as I used to need just v4 addresses I made one separate script for v4 IPs, v6 IPs and proxied, but it wouldn’t take long to combine. Here’s my v4:

    #!/bin/bash
    CLOUDFLARE_API_TOKEN="<api_here>"
    ZONE_ID="<zone_id_here"
    DOMAINS=({subdomains.,www.}domain.tld)
    log="/opt/ddns/log_$(date +%F).txt"
    result=""
    CURL="/usr/bin/curl"
    JQ="/usr/bin/jq"
    IP=$($CURL -s http://ipv4.icanhazip.com/)
    echo $(date +"%FT%T")>>$log
    echo "Performing v4 proxied domain IP address check...">>$log
    
    # Get v4 records
    for DNS_RECORD in ${DOMAINS[@]}; do
    DNS_RECORD_ID=$($CURL -s -X GET "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records?type=A&name=$DNS_RECORD" \
      -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
      -H "Content-Type: application/json" | $JQ -r '{"result"}[] | .[0] | .id')
    
    # Get each record's IP
    current_ip=$($CURL -s -X GET "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/$DNS_RECORD_ID" \
      -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
      -H "Content-Type: application/json" | $JQ -r '.result.content')
    
    # Check if the IP addresses are different
    if [[ "$IP" == "$current_ip" ]] || [[ "$IP" == "" ]]; then
      continue
    fi
    
    echo "IP address for $DNS_RECORD has changed from $current_ip to $IP. Updating record...">>$log
    result="$result${DNS_RECORD%%.*}, "
    
    # Sets the new IP if different
    response=$($CURL -s -X PUT "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/$DNS_RECORD_ID" \
      -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
      -H "Content-Type: application/json" \
      --data '{
        "type": "'"A"'",
        "name": "'"$DNS_RECORD"'",
        "content": "'"$IP"'",
        "ttl": 120,
        "proxied": true
      }')
    
    if [[ $response == *"\"success\":true"* ]]; then
    echo "DNS record updated successfully">>$log
    else
    echo "Failed to update DNS record for $DNS_RECORD. Response: $response">>$log
    result="$result\nFailed. See log."
    fi
    
    # Sends information to webhook
    unset DNS_RECORD_ID
    done
    if [ -n "$result" ]; then
      $CURL -X POST -d '{"result": "'"$result"'\n'"$current_ip"' -> '"$IP"'"}' "<home_assistant_local_webhook-delete_this_block_if_unwanted>" -H "Content-Type:application/json"
    fi
    echo $result>>$log
    echo $'Done.\n'>>$log
    /opt/ddns/cloudflare_ddns_v4_direct.sh # This triggers the next script