❌

Reading view

SurfSense: a self-hosted NotebookLM alternative

SurfSense: a self-hosted NotebookLM alternative

I'm one of the maintainers, so this is self-promotion. I want honest feedback more than upvotes.

What it is

SurfSense is an open-source (Apache-2.0) NotebookLM alternative: cited Q&A over your documents, mind maps, flashcards, quizzes and podcasts, and an agent that writes Word, PDF, PowerPoint and Excel files and edits your own files as a new copy, with Word edits coming back as tracked changes. It started as a desktop app, and since 2.3.0 the same app runs as one container.

Why self-host it

NotebookLM sends every document to Google and only works with Gemini. That rules it out for contracts, client files, medical or company documents. SurfSense keeps your documents on your own server and works with any model.

The container

  • One image, ghcr.io/modsetter/surfsense, with one service and one /data volume. No Postgres, Redis or other services to run alongside it.
  • Caddy is the only thing listening. Everything else stays on the container's loopback, and it needs no Docker socket.
  • Local models run inside it on the CPU (llama.cpp, plus local OCR, embeddings and voices), or you can point it at Ollama, vLLM or any OpenAI-compatible API on your network.
  • One password, no accounts. You can set the password on first visit or with SURFSENSE_PASSWORD, or turn sign-in off when your own reverse proxy handles it.
  • HTTPS on your LAN through Caddy's own certificate authority, or with Let's Encrypt for a public domain.

Getting it running

curl -fsSL https://raw.githubusercontent.com/MODSetter/SurfSense/main/docker/scripts/install.sh | bash 

Or grab docker/surfsense/docker-compose.yml and .env.example from the repo and run docker compose up -d. It's on port 4929, and 4943 for HTTPS. Running the script again updates it.

Good to know

  • amd64 and CPU only for now. A GPU image and arm64 are planned.
  • The image is several GB: Docling, torch and about 1 GB of bundled models. Chat models download into /data at run time.
  • Docker's published ports bypass ufw, so if the server is reachable from the internet, set SURFSENSE_PASSWORD before the first start.

How we used AI in development

Most of the code is written with AI coding assistants, mainly Claude Code and some Cursor, with maintainers designing the features, reviewing every change and testing the releases. New behaviour starts with a failing test, and each feature has an architecture doc the assistants read before changing it.

Repo: https://github.com/MODSetter/SurfSense

Docs: https://surfsense.com/docs

submitted by /u/FurtiveMirth to r/selfhosted
[link] [comments]
  •  

Netbird vs. Pangolin in late 2026

Hi all,

I am currently working through a rebuild of my homelab and am re-evaluating how I access my stuff remotely. Local access is controlled via Caddy+Authelia, and I would like to keep Authelia for authentication at the very least. I had been using a mix of Cloudflare tunnels and twingate for remote access, but I would like to get that more centralized. Also, no port forwarding as I am behind CGNAT with no way to get a public IP (parent's internet at home and dorms at college). I do have a PAYG Oracle VM, 2c+12gb for hosting the coordination services.

Why even bother with a reverse proxy you may ask? Well, I would like to access some services on my iPhone, which already has a 24/7 VPN needed for another app. I would like to access services like Obsidian-Livesync, Cal/CardDAV (unless ios or gmail calendar uses something else), and potentially some other small web services. I will not be exposing any management tools, rest assured.

  • Pangolin is from what I have heard the self-hosted replacement for Cloudflare tunnels, giving you a reverse proxy with solid access controls and object-based permissions. It also has a VPN now, which is really neat!
    • How are the speeds on this?
    • For the VPN client, would it be possible to make a small TUI script for the Linux CLI? My mother would be using the VPN and I want to make it simple for her to connect (yes, she will be using Mint).
    • I like the simplicity of the central server that everything goes through, I have also heard that the rules are easier to understand here?
  • Netbird is effectively a WireGuard overlay network AFIAK, really nice for P2P connections. Network and device based rules, wireguard is fast and reliable, plus native GUI clients for all operating systems. Some people say that they are moving faster than Pangolin?
    • Mesh based VPN, having used this a little I can say that the access rules seem really complex to me, but maybe I just need to spend more time with them? Due to the mesh I will have to manage inter-device relations, Pangolin not so much.

Some other architectural questions:

  • Do I point the reverse proxy endpoints directly at my Caddy instance, or should they point at the service itself? This would make two paths for authentication, Caddy for internal/local only, and Netbird/Pangolin for public/remote.
    • If I do split them, is there a good way to manage the permissions for both using IaC like ansible?

Looking for advice and feedback!

submitted by /u/Entity_Null_07 to r/selfhosted
[link] [comments]
  •  

Looking for affordable and scalable hosting for our app

Hey everyone,

We’re a team of four currently developing an app and we’re looking into hosting options.

Since we’re still at an early stage, we don’t really know how many users we’ll have. Maybe 10–20 initially, then hopefully 100, 1,000 or more over time.

We’re looking for something affordable to start with that allows us to scale resources as the number of users and the workload increase. We understand that hosting costs will grow as well, and that’s completely fine.

Our current stack:

  • Backend: Node.js, NestJS, TypeScript
  • Database: MongoDB
  • Redis + BullMQ
  • Socket.IO
  • SeaweedFS for file storage
  • ClamAV
  • Frontend: Flutter (Web and Mobile)
  • Docker Compose

We’ve looked at providers like Hetzner and Netcup, but we’re still unsure what would make the most sense for our setup.

Would you start with everything on a single VPS or separate certain services from the beginning? Which hosting providers would you recommend, and how easy is it to scale later?

We’re comfortable with Linux and Docker, so managing a server ourselves wouldn’t be an issue.

I’d be interested to hear what server specs you’d recommend for the beginning and how hosting costs typically develop as usage grows.

submitted by /u/MrGraga to r/selfhosted
[link] [comments]
  •  

Non-*arr self-hosted recommendations?

Been self-hosting for a while and I keep seeing the same recommendations. I’m specifically looking for things that aren’t piracy-related or *arr-adjacent. No DRM removal needed. The reason I skip Audiobookshelf since used mostly with Libation or piracy. I’m not trying to fill the usual media automation niche

Here’s what I’m already running so you can skip the obvious ones:

  • Homarr (dashboard)
  • Open WebUI
  • SearXNG (mostly wired up for AI search; I still prefer Brave for normal browsing)
  • Dawarich (location history, big fan of this)
  • Immich (photos)
  • Nextcloud
  • Uptime Kuma
  • Hister (personal search index of pages and files)
  • Speedtest Tracker
  • Invidious
  • qBittorrent (not for piracy, I just seed about 7 TB of AI models and I’m currently #5 on the pirateface.co leaderboard)
  • Frigate
  • WUD
  • Grafana
  • MeTube
  • A custom Signal bot
  • Forgejo (and workers or whatever it is called)
  • Scrutiny
  • A couple of fully custom things (I had Claude build and just put behind a zero-trust policy)

I bought a a lot of storage when I first got into this and still don’t really know what to put on most of it. 16TB HDD & 1 TB SSD & 4TB SSD.

Looking for the non-obvious stuff people find useful not monitoring tools.

submitted by /u/Any-Cartographer9406 to r/selfhosted
[link] [comments]
  •  

Self-hosted proxy for npm, PyPI and pub: new releases wait 7 days before anyone at work can install them

Self-hosted proxy for npm, PyPI and pub: new releases wait 7 days before anyone at work can install them

What it is: a self-hosted caching proxy (git-pkgs/proxy, one Go binary) between everyone at work and npm, PyPI, pub, Maven and Go. New releases stay hidden for a week, and every download is logged with who pulled it.

Why: this year's big hijacks were all pulled within a few hours, so a week means you basically never see them.

The post has the config, what broke, and the built-in settings if you'd rather not run a proxy.

submitted by /u/iApexxx to r/selfhosted
[link] [comments]
  •  

Pocket ID v3 with a completely rewritten UI is around the corner - We need your feedback

Pocket ID v3 with a completely rewritten UI is around the corner - We need your feedback

Hey everyone

I thought I'd post this here too, since not every homelabber spends their free time on GitHub looking for new discussions.

Version 3 of Pocket ID is around the corner, and I'd love to hear your feedback before we release it so we can polish it.

If you have any feedback, please post it in our GitHub discussion so we can keep track of it:

https://github.com/pocket-id/pocket-id/discussions/1888

You can try it out in our demo: https://demo-next.pocket-id.org

You can also test it on your own machine with the `next` image. I wouldn't install it on your production instance though, since this image includes all the WIP v3 changes.

Here are a few highlights I like the most:

Feature toggles

There's a new Features tab where you can turn on LDAP, SCIM, custom claims, APIs and API keys when you need them. Until then they stay out of your sidebar. Settings you rarely touch are behind an "Advanced" section. I think this change is needed since we want that Pocket ID supports advanced use-cases but still doesn't get overwhelming like other IDPs.

https://preview.redd.it/4xopejk011zh1.png?width=2404&format=png&auto=webp&s=924af82a5d84c554019fc3e88763806526f080b6

Command palette

Press ⌘K / Ctrl+K to jump to any page or run actions like creating a new OIDC client without touching the mouse.

https://preview.redd.it/rzimj3g311zh1.png?width=1544&format=png&auto=webp&s=f669abccffa17eef9ac88292c94db6c4c6d16a77

Fresh look

New typography and five colour themes, each in light and dark mode.

https://preview.redd.it/j45pxsr021zh1.png?width=4217&format=png&auto=webp&s=901c1653aa86755a1797c9a3ae3a09bb9bac7d56

Besides that there are a lot of more changes, feel free to try them out! Looking forward to your feedback :)

submitted by /u/GeneralXHD to r/selfhosted
[link] [comments]
  •  

My Glance setup: home, media, NAS

My Glance setup: home, media, NAS

My glance setup, mostly used on my phone since i like having everything in my pocket and checking the house, the nas or what's coming out this week without opening 10 apps.

Home tab is the daily stuff like weather, calendar, lights and budget, media is self explanatory and yes I like IMDB and the nas tab shows all my containers with outages and scheduled tasks.

Running on a ugreen dxp2800, open to ideas if you would change something.

submitted by /u/awesomex99 to r/selfhosted
[link] [comments]
  •  

Am I An Idiot

I have read for years that it is just not worth it to host your own email. I have understood this. I have believed this.

Recent changes in Google's policy have me considering moving away Gmail and even Google Workspace. I already only use it for the email feature - I use Immich, Nextcloud, Vaultwarden, etc. I use a combination of self hosted in the home and on self managed cloud servers (can't really have Uptime Kuma on the home network to tell me if the home network based services go down, for example).

I researched other email providers. I didn't like what I saw or the prices you would get per user.

So I decided I would just try and see if I could make it work to host it myself. I found Stalwart and got that going on a cloud server. It has a setting to link right into the Cloudflare API and add all the records it needed. It was way easier than I expected. The IP I got for the server was clean on spamhaus and everywhere I checked. Once I got everything set up, I sent some emails to test. They all arrived. They passed SPF,DKIM,DMARC. Stalwart has cardDAV/calDAV. Scored 10/10 on mail-tester. Shows up even to my Outlook inbox for my work email (now that was filtered to spam but so is everything that isn't whitelisted by IT).

Everything is hardened and access is locked down behind cloudflare. I have bichon running to back up everything from Gmail/Workspace now. I did this all on a separate subdomain for testing.

Am I an idiot? What am I missing that is going to blindside me on this? Is the other shoe going to drop? Why should I not just full send it and move over to my shiny new selfhosted email provider?

Talk me down off this cliff here because I am already in my swimsuit and the water down there looks inviting.

submitted by /u/BooleanTriplets to r/selfhosted
[link] [comments]
  •  

Ubuntu kernel CVE-2026-98432 (CVSS 9.8): no fixed kernel yet for 22.04 / 24.04 / 26.04. What are you doing in the meantime?

Heads up for anyone running Ubuntu on their self-hosted boxes.

CVE-2026-98432 is a use-after-free in the kernel's IPv4 TCP code (inet_opt / ireq_opt get freed before the RCU grace period ends). Ubuntu rates it High with a CVSS of 9.8. Red Hat's bulletin says a remote, unauthenticated attacker could win the race condition and get code execution. Neither Ubuntu nor Red Hat says it is being exploited yet.

The annoying part: as of Ubuntu's last update on Oct 30, every supported LTS is listed as "vulnerable, work in progress". There is no fixed linux package yet for 22.04, 24.04 or 26.04, so a normal apt upgrade won't fix it this time. 20.04 and older are simply listed as vulnerable.

Red Hat has published a temporary nftables mitigation that drops incoming IPv4 TCP packets that carry IP options. The core of it is:

ip protocol tcp ip hdrlength > 5 counter drop

They are clear that it reduces exposure but does not fully prevent it, and that a kernel update is the only complete fix. The full rule file and the command to remove it after patching are in their bulletin. IP options are rare in normal traffic, but I would still test it on one box before rolling it out everywhere.

Quick checks while we wait:

uname -r

apt list --upgradable 2>/dev/null | grep linux-image

For those of you with services exposed to the internet: are you applying the nftables workaround now, or just watching the Ubuntu tracker and patching when the kernel lands?

Sources:

- Ubuntu CVE tracker: https://ubuntu.com/security/CVE-2026-98432

- Red Hat RHSB-2026-016 (with the mitigation): https://access.redhat.com/security/vulnerabilities/RHSB-2026-016

(Drafted with AI help. The facts are from the Ubuntu and Red Hat pages linked above.)

submitted by /u/WorriedAd9268 to r/selfhosted
[link] [comments]
  •  

plMail Update: PGP, S/MIME, JMAP, POP3, CardDAV Contacts and more

plMail Update: PGP, S/MIME, JMAP, POP3, CardDAV Contacts and more

Links:

Demo: https://demo.pluetzner.de
Github: https://github.com/karatektus/pl_mail

Wow, it has been about 3 Weeks now since my last post on r/selfhosted. Since then plMail went from 6 to 470+ stars and from two to about 8 contributors and 2 actual sponsors on github.
THANK YOU!
I've basically worked full time the last three weeks fixing bugs, building new features and reviewing PRs. It's been a blast.

First things first: While I am a PHP Dev for at least ten years, this is built with Claude Code. For more details and discussions about this you can reference my last post: link

What is plMail?

The idea is to replace Gmail. It is about to remove it's gmailify feature which lets you include external mail in the Gmail Client. I've been using it for the last 22 years and really do not want to configure Thunderbird or whatever on all of my devices. Six months ago there really was no alternative for a web based client, which had a unified inbox and supported IMAP and Gmail. So I built my own.

New major features since my last post:

  • PGP and S/Mime encryption
  • OIDC oAuth Login (including an option to disable password login entirely)
  • It's now also a JMAP Client (And a JMAP Server for it's own apps... so yes. you can chain plMail installations. xD)
  • Less memory usage through it's own IMAP Client
  • More languages: French and simplified chinese
  • A lot of smaller stuff

Installation:

On Truenas it's in the Appstore, otherwise it's just:

git clone https://github.com/karatektus/pl_mail.git cd pl_mail docker compose up -d 

The Future

While it has been a lot of fun and I do have time currently I'm also trying to figure out how to justify spending all my time on this project. I'm currently looking for a job, which I've let slide a bit in favour of plMail. As a first step, I will sell the plMail android App on the google play store: It's fairly expensive, but it's also open source, and releases can be downloaded for free on it's github page.
It is very much in development and needs refinement on every corner. So if you're considering buying it: Please see it as a contribution to the project and not as buying a finished product.
Just search for plMail on the playstore if you want to. I'm not posting a link here.

Otherwise this is a very fun project for me and the next majore releases are probably business related. Shared Accounts, User management, etc.
Also a contributor is currently building a calDAV task feature.

If you like it, want other features or find a bug: Feel free to participate on Github :)

submitted by /u/karatektus to r/selfhosted
[link] [comments]
  •  

A TUI to get into self-hosting

A TUI to get into self-hosting

Last year I built Docker Compose Maker, It was a super simple website to help you get a fully working docker compose file to get started homelabbing.

Now, one year later I am presenting to you: self-host.fyi, the "v2" of DCM.

I've been contributing to Homarr almost weekly for almost 5 years. Recently I'm preparing to support Sonarr v5 beta and needed to ensure that nothing broke, as well as adding automated tests every week to check that every Homarr integration still works properly with the latest breaking changes from the 91 integrations it supports. We used to mock integrations results so basically the users complaints were the test suite.

For that purpose I made a tool that sets-up these apps in a headless environment and connects them to Homarr. I now run a script weekly on my own homelab that sets-up every one of the 91 integrations with the :latest image and pings me if something broke. I adapted it into a tool that I thought newcomers to self-hosting could enjoy.

Self-host is a complete re-write and addition to DCM / compose.ajnart.dev, it is a simple binary that works for linux, mac, wsl2 & agent skill that aims to get people into self-hosting.
It's just Docker compose underneath. You pick which services you want through a TUI catalog, and it handles not just deploying every containers but also the setup of accounts, API keys & linking apps together.

All your config files and your docker setup is inspectable docker compose files. Think of it like a helper for docker compose for new users, some kind of TUI to manage containers, it's like Dokploy, Portainer or CasaOS but directly inside of your terminal.

The most important change is that it will link apps together. It is able to setup Sonarr for you and set Qbittorrent as the download client automatically, by creating an admin account in Qbittorrent and putting its API key into Sonarr directly. The passwords are automatically generated by default and can be manually defined.

You can have a fully running self-hosted setup going with one command, it comes with a fully-configured dashboard to access all your services from if you want to.

If you've already got your dream homelab running and perfectly tuned, this isn't for you. It is more geared towards people who are looking into getting into self-hosting or who'd want to try out an app in an easy way.
Right now we support 93 self-hosted apps and hopefully that covers most people's use cases.
I've spent extra time to make sure that the SDK the tool uses is super easy to work with so that anyone who knows how to program in Go can suggest additions, there's also a feature to add unsupported apps without coding

website : self-host.fyi
repo : github.com/ajnart/self-host
small presentation video: https://self-host.fyi/#reel

submitted by /u/Available-Advice-294 to r/selfhosted
[link] [comments]
  •  

What happens to your selfhosted data when you're gone?

I'm thinking about death, sometimes a lot. From different angles, and since I'm a selfhoster (read: tech savvy guy) and my direct family aren't really, I have a question but no answer yet, so I'd like to ask you guys here.

My server holds more than my stuff. It has 10+ years of family photos in Immich, our location history and trips and scanned documents. If I got hit by a bus tomorrow, my family would get a box humming in the corner of our living room. They'd have no idea how to log in, what's on it, or when the domain expires or whatnot.

With Google or iCloud there's at least an inactive account / legacy contact process, but I have pretty much successfully degoogled, and have no plan B in case anything happens to me.

So:

- Do you have any plan for this? A printed "if I'm gone" doc, shared credentials, Vaultwarden emergency access, something else?

- Would your family actually be able to get the photos out, or would they need a nerd friend?

- If you've thought about it and decided not to bother, why?

Sorry for hard questions this fine Friday.

submitted by /u/Freika to r/selfhosted
[link] [comments]
  •  

SparkyFitness v1.10.0 - Supports Android watch App - A Self-Hosted alternative for MyFitnessPal, Flo, Hevy, Shotsy & more

SparkyFitness v1.10.0 - Supports Android watch App - A Self-Hosted alternative for MyFitnessPal, Flo, Hevy, Shotsy & more

We just crossed 6.5k+ stars in Github and have 150+ amazing developers contributing to the project. We are scaling faster than ever and estimated to 10k+ users who are using SparkyFitness. It could be even more as we don't collect anything and this count is based on active downloads in Github, Google & Apple app stores.

https://github.com/CodeWithCJ/SparkyFitness

I was also able to setup demo site so you can give it a try before you actually install it.

https://demo.sparkyfitness.com/

If you haven't tried SparkyFitness yet, I'd love for you to give it a spin and let us know what you think.

Core Features

  • Nutrition, hydration, fasting, barcode, snap picture to log etc.
  • Sleep, Mood, Symptom tracking
  • Exercise, Workout, GPS run/cycle mapping
    • New Updates
      • Train with run programs: Follow a zone 2 base plan with HR guidance, weekly distance goal etc.
      • Draw routes on map, snap them to roads, generate loops of set distance, follow a saved route on your apple watch.
      • Smart strength workout: Pin the set to do now, swap exercises in a tab, keep your sets when you replace an exercise and load the bar with plate calculator.
      • Heart rate zones: Set your own max and resting HR, zone method and analyze using detailed HR reports
  • Body measurement tracking
    • New Updates
      • Log your mood, measurements, progress photo in three quick steps using guided navigation
  • Period Cycle, Pregnancy, Medication & GLP1 tracking
  • Goal setting and daily check-ins
  • Interactive charts and long-term reports
    • New Updates
      • Mobile app includes many reporting in the dashboard view
  • Multiple user profiles and family access
  • AI Chatbot & MCP Server
  • Light and dark themes
  • Apple watch & Android companion Apps
  • OIDC, TOTP, Passkey, MFA etc.

Please thumbs up Github issues & enhancement request so we know which one to prioritize next. I would like explore following hardware integrations.

  • NFC tag for quick water log, food etc.
  • Direct integration with smart weight scale (starting with Etekcity) - This way you don't need to send your health details to cloud providers

Health & Device Integrations

SparkyFitness can sync data from multiple health and fitness platforms:

submitted by /u/ExceptionOccurred to r/selfhosted
[link] [comments]
  •  

Playmat: a self-hosted Magic: The Gathering server you can play from the browser (Docker Compose, ARM + x86)

Playmat: a self-hosted Magic: The Gathering server you can play from the browser (Docker Compose, ARM + x86)

https://preview.redd.it/gcfggqi90gyh1.png?width=2400&format=png&auto=webp&s=a67d4c34f20af5abd1554a7f22ad9e1782946528

I've been working on Playmat, a fork of XMage (the open-source MTG rules engine) with a browser client, and the main way to run it is self-hosted. It's built for a playgroup that wants its own server.

The stack: four containers from one compose file: the game server, Caddy with automatic HTTPS, a cache for card pictures from Scryfall, and a nightly backup. Images are published for x86 and ARM, so a Pi-class box or a free ARM VPS works. About 1 GB of RAM is enough for a group's evening; there's a small-VPS preset that lowers the limits.

Setup:

git clone https://github.com/arcanite24/playmat.git && cd playmat cp ops/web/.env.example ops/web/.env # set DOMAIN and the owner account docker compose -f ops/web/docker-compose.yml --env-file ops/web/.env up -d 

No domain? There's a LAN mode for a group on one home network. There are also desktop installers if you just want to host for friends on the same Wi-Fi.

Admin side: a web admin console with moderator/admin/owner roles: who's online, reports, the audit log, registration rules, scheduled maintenance with in-game warnings, and an optional one-button update and rollback. It can send Discord notifications and password-reset mail.

What you get as a player: play vs AI or friends with invite links, drafts and sealed with AI filling empty seats, deck import from Moxfield/Archidekt, spectating and replays. Desktop browsers, tablets, and an Android app.

Docs: https://arcanite24.github.io/playmat/docs/server.html
Repo (MIT): https://github.com/arcanite24/playmat

It's a free fan project, not affiliated with Wizards. Feedback on the deployment side especially welcome: what would you want before running it for your group?

https://preview.redd.it/hsbkll9h0gyh1.png?width=1920&format=png&auto=webp&s=5e3d4e6423fb37b2d2cfa368e3db506d34646fe5

submitted by /u/arcanite24 to r/selfhosted
[link] [comments]
  •  

PSA: Synology NAS owners, there has been a recent uptick in C3RB3R Ransomware attacks

Greetings!,

For anyone running a Synology NAS, please read up on their latest security advisory Synology-SA-26:14 PHP2Shell.

There have been a considerable number of users reporting compromised NAS devices on r/synology over the past ~12 hours. It seems like most of the affected users were on outdated versions of DSM, not running updates on their packages, and/or being exposed to the open internet via QuickConnect, but I wanted to share here for the sake of visibility.

If you've already been impacted, search for "c3rb3r-rescue" on the open web and you should find a project that proports to help with this. I have not personally used it. (Auto-mod removed my last post where I submitted a hyperlink to it, because it incorrectly assumes it is project self-promotion and directed me to the weekly projects mega-thread.)

For the rest of Synology users who don't believe they've been impacted, you should take precautions IMMEDIATELY.

Combining the information some people have shared in r/synology, the following steps should help reduce your exposure:

  1. Update DSM and your installed packages. Some users have reported that DSM was not prompting them for updates. Go manually check.
  2. Remove packages you don't use.
  3. Review how your NAS is accessible from the internet. Port forwarding, UPnP, reverse proxies, etc. If you don't need external access, disable it. Ideally, you should be using something like Tailscale to access.
  4. Review your general security settings. Ensure MFA is enabled where supported, disable the default admin account, turn on immutable snapshots, and change default ports for anything that does need external access (Plex, for example). Ideally

Note to the security-conscious among us: It is true that one shouldn't have ports open, shouldn't have your NAS exposed to the internet, and should restrict external access to something like WireGuard or Tailscale... But Synology has marketed its products to general users as an easy-to-use solution, with features like QuickConnect, Photos, Drive, and other DSM applications making remote access relatively straightforward. I think this has given some users a false sense of security about what it actually means to have a NAS accessible outside their home network and needs to be called out for their sake.

submitted by /u/Toastiesyay to r/selfhosted
[link] [comments]
  •  

Does a good self hosted recipe manager app exist?

Tandoor, Mealie, Recipe Sage, Kitchen Owl all have borderline unusable UI's. Particularly with the recipe creation section. It seems a lot of people are happy with Mealie, I am assuming this is because most people import/scrape there recipes? Creating recipes by hand with any of these apps is incredibly clunky.

None of them have options for categorizing your recipes beyond tagging, ie a folder of pastry recipes. You can't really customize any of them at all, ie Tandoor & Mealie both assume youl be adding pictures to your recipes, so all of the tiles in the main home view are massive and doesn't look very good.

Cooklang could have been amazing, but there was this strange decision to make defining your ingredient list inline with the recipe steps, which seems very "simple" in the long run makes everything more complicated for a variety of reasons.

Right now I have several hundred recipes in a Google spreadsheet, which is as you can imagine pretty clunky, but I don't think its an exaggeration to say that it still beats out any of the options I've come across.

submitted by /u/fozz179 to r/selfhosted
[link] [comments]
  •  

Guide - Use docker to operate legacy scanner hardware on Windows 11

Guide - Use docker to operate legacy scanner hardware on Windows 11

So I have my fairly old Canon LiDE 60 flatbed scanner, which I need occasionally to scan documents.
This scanner is somewhat like 20 years old!
Despite its age, it's doing its job, and it's doing it quite well.

The biggest issue?
Getting it to work on Windows 11, without setting up a dedicated virtual machine with Windows XP just for this scanner.
I hesitate to get a replacement, because I hate throwing away perfectly working hardware and creating unnecessary e-waste, just because driver support dropped.

What I tried:
- VueScan: The trial version works like a charm. VueScan recognizes the LiDE 60 and the scan results are beautiful, the post-processing is good.
Unfortunately, the trial of VueScan prints a huge watermark overlay, making the scans unusable. I'm absolutely not willing to pay ~ 85 € for this

(heck, even the one-year license for about ~ 25 € is not barely worth it.
For 85 € I can get a new scanner, which is compatible with Windows 11, and for 25 € a used model).
The VueScan pricing is absolutely ridiculous, at least for a bog-standard flatbed scanner (I know they also support film scanners, which is a different story and probably worth the license fee, but absolutely not in my case).

And attempting to find a crack / patcher for VueScan is the best way to get some nice Malware on the machine. The search results are flooded with fakes and I'm not willing to spend my time and taking the risk to find a legit crack.

- Reusing the Windows 7 driver: Well. It used to work until some Windows 10 update. And I haven't managed to get it back it work since then, also not on Windows 11. According to a comment, it's supposed to work, but whatever 💁

- Virtual Machines with VirtualBox: Works with Windows XP as well as Ubuntu. But this solution is fairly slow and inconvenient. Also, wasting at least 20 GB of space for a VM, just as a scanner driver replacement, is crazy. I don't need the VM all the time on my machine, but every new VM setup takes up some time and is annoying.
So, the VM solution is somewhat ok. It does its job. But it feels clumsy and I don't like this approach.

VueScan is out of the game, as is the legacy Windows 7 driver. What is left? Virtualization!
But a VM is somewhat clumsy and heavyweight. I seek a more lightweight and elegant solution.
Like Docker containers.

Can we containerise Linux scanner drivers and expose scanning software through a web interface out of the container? Yes, we can!
And luckily, someone already wrote that software. And also provides a Docker container.
May I introduce scanservjs?

So we have a Docker container with all the required software stack. We just need to connect it wit our scanner and let's go.

Prerequisites / Installations:
- Docker is installed and the WSL 2 backend enabled (this is currently the default engine). Docker must also be running.
- usbpid-win must be installed.

One-time setup:
- Download the Docker container: docker pull sbs20/scanservjs
- Open a terminal with administrator privileges for usbipd.
- List the USB devices and find the busid of the scanner with usbipd list
(the busid is 6-3 of the CanoScan LiDE 60 in this example.
It will be different on your machine! Use the busid of your scanner)

Connected:
BUSID VID:PID DEVICE STATE

1-4 04f2:b71c Integrated Camera, Integrated IR Camera Not shared
3-1 0bda:9210 USB Mass Storage Device Not shared
3-3 27c6:6594 Goodix MOC Fingerprint Not shared
3-4 8087:0029 Intel(R) Wireless Bluetooth(R) Not shared
4-1 17ef:3062 Lenovo USB Ethernet Not shared
6-2 17ef:3060 Billboard Device, USB Input Device Not shared
6-3 04a9:221c CanoScan LiDE 60 Not shared
8-2 2c7c:0600 Quectel EM120R-GL, Quectel QMUX Interconnect Not shared

Persisted:
GUID DEVICE
5e1e689d-7ca1-49ff-926d-eebd377bd1a7 USB Serial Device (COM11)
cb0cb49e-40d6-4d3b-9483-0c1f3c175fbf USB Serial Device (COM12), USB Mass Storage Device

- Bind and attach the busid of the scanner to the WSL engine.
usbipd bind --busid 6-3
usbipd attach --wsl --busid 6-3

The output should be somewhat like that:
usbipd: info: Using WSL distribution 'Ubuntu-26.04' to attach; the device will be available in all WSL 2 distributions.
usbipd: info: Detected networking mode 'nat'.
usbipd: info: Using IP address 172.23.64.1 to reach the host.

- Check the binding with usbipd list. The scanner should be in the state Attached now.

Connected:
BUSID VID:PID DEVICE STATE

1-4 04f2:b71c Integrated Camera, Integrated IR Camera Not shared
3-1 0bda:9210 USB Mass Storage Device Not shared
3-3 27c6:6594 Goodix MOC Fingerprint Not shared
3-4 8087:0029 Intel(R) Wireless Bluetooth(R) Not shared
4-1 17ef:3062 Lenovo USB Ethernet Not shared
6-2 17ef:3060 Billboard Device, USB Input Device Not shared
6-3 04a9:221c CanoScan LiDE 60 Attached
8-2 2c7c:0600 Quectel EM120R-GL, Quectel QMUX Interconnect Not shared

Persisted:
GUID DEVICE
5e1e689d-7ca1-49ff-926d-eebd377bd1a7 USB Serial Device (COM11)
cb0cb49e-40d6-4d3b-9483-0c1f3c175fbf USB Serial Device (COM12), USB Mass Storage Device

Scanning:
- Run the Docker container: docker run -d -p 8080:8080 --privileged sbs20/scanservjs
- Open http://localhost:8080/ in your browser and enjoy using your old scanner. No need to throw away fully working hardware.

Scanned handwriting: Scanned on a Canon Lide 60 on Windows 11 with scanservjs and Docker

How does this work?
The foundation is the SANE driver for Linux. Your scanner must be supported by SANE, otherwise this whole setup won't work.
usbipd is used to redirect your USB device through USB/IP to the WSL 2 engine. The USB redirect is not just for your default WSL distribution, it's also available to all Docker containers. You can verify this by executing e.g. lsusb from within a Docker container.

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 005: ID 04a9:221c Canon, Inc. CanoScan LiDE 60
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

Related Resources:
- https://www.geckoandfly.com/7569/canon-lide-scanner-and-printer-driver-for-microsoft-windows-7-64-bit/
- https://www.schraegstrichpunkt.de/canon-canoscan-lide-50-unter-windows-7-64-bit
- https://www.bachmann-lan.de/canon-lide-60-unter-windows-10/
- https://www.bentasker.co.uk/posts/blog/opinion/scanners-old-hardware-and-the-environment.html

submitted by /u/redderredred to r/selfhosted
[link] [comments]
  •  

Best self-hosted Spotify replacement with music discovery

I'm looking to replace Spotify with a self-hosted setup, especially its personalized recommendations, Daylist, Discover Weekly and Daily Mixes

I'd love to discover and listen to new music without permanently downloading everything, while keeping my favorites and automatically collecting releases from selected artists.

I already have Soulseek, Usenet and torrents available, as well as my exported Spotify listening history and playlists

I'm completely open to any software or combination of tools.

Has anyone built something that comes close to Spotify's discovery experience? What would you recommend?

submitted by /u/bka-informant to r/selfhosted
[link] [comments]
  •  

My journey after six months... and my thoughts..

My journey after six months... and my thoughts..

This has been quite the learning experience for me. I knew absolutely nothing at the start of this, although I had a pretty good background understanding of computers in general, but only with Windows machines. I just knew I wanted to take back control of my data.

I installed TrueNAS on an old i7 3770k system with 32GB of DDR3 RAM.

At first, I (heavily) used AI to help me with installing community apps, navigating the file system and permissions because I just didn't understand it. As I went, I learned more and more and went well beyond where I expected to stop.

Fast forward to now, I have a pretty good understanding of Linux and Docker in general. I ditched Windows on two other machines in favor of CachyOS and Ubuntu, and I am using those other two machines to run services complementing my server stack.

My thoughts:

  • Docker is amazing. I am in constant awe of the capabilities that Docker has and really how easy it is to use once you understand how it works.
  • Don't expose your services to the internet if you can help it. I have Ubiquiti hardware so everything is utilized via VPN when I am away from home.
  • Physical disks will fail. I lost two drives during this time. One showed bad sectors after maybe 3 months, and its replacement was DoA. Luckily, I did not lose any data, but I do offsite backups to Backblaze weekly, my app pool is mirrored to another disk inside the server as well as pushed via rsync weekly to my CachyOS and Ubuntu systems.
  • Learn how to use the shell and shell commands.
  • Problems with things are permissions related 99% of the time.
  • The "arr" stack is amazing. It's like magic.

Thanks for reading.

submitted by /u/rickymilby to r/selfhosted
[link] [comments]
  •  
❌