Recommended Linux Disto

I currently run my Stash instance on MacOS (a much older OS and Intel version) and want to migrate to a dedicated Linux box. Is there a particular Linux distro that is recommended over others? It will be a new system, so you can start with any Linux.

On top of that, is there a good method for migrating the data beyond just starting completely over, or are the different OS types not compatible for migration?

Depends if you want it for “server” or for everyday personal use. There are So many distros each with their own fanbase and appeals

As for the stash migration from mac → linux it should be as easy as copy paste

I do agree on the multiple varieties of distros hence why I ask. I have a few servers all on different OS’s so was looking for a recommendation for a stash focused machine.

The real answer is Anything and just run it in docker, but for a machine only running stash you’d probably want to keep the host as minimal as possible.

IMO

  • ubuntu server for beginners
  • debian if you like apt
  • rocky if you like dnf or need extreme stability
  • alpine if you’re crazy and resource constricted
  • arch if you’re extra crazy

Still pretty new to docker and I found the documentation didn’t explain the options within the compose file well for me so will likely avoid it unless I find a better description/install guide.

But I am pretty familiar with Ubuntu so might just stick to that. I appreciate the info. Do have to agree on your list of OS’s though.

You said it should be as easy as copy and paste, what exactly am I copy and pasting?

Seconding the recommendation for Ubuntu. I’m a fan of Debian myself, but the benefit of Ubuntu is that it usually has more up to date packages in its repositories. Don’t feel compelled to use Docker either, the Stash binary will run anywhere. If not using Docker you’ll want something that auto-starts Stash which is where systemd comes in.

What will be good to know is how you intend on running linux. Is it a VM? Where and how is your stash data stored?

FYI this is my systemd config for running Stash (no Docker). You’ll want to modify the user/groups and directories/config path to best match your own setup.

[Unit]
Description=Stash
After=network.target

[Service]
Type=exec
User=1000
Group=1000
WorkingDirectory=/opt/stash
Environment=PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin STASH_SQLITE_CACHE_SIZE=-64000
ExecStart=/usr/bin/stash --nobrowser --config /home/stash/config.yml
Restart=always
Restart=on-failure

[Install]
WantedBy=multi-user.target

Currently, my Stash instance is running with the native macOS pkg on my ancient Mac Pro. It runs fine, but I want to shift the Stash instance to a dedicated system. I know I don’t have to, but it is what I would prefer to do at this point. I started a new Stash instance on my newer Mac Mini running within Docker, and so far, only a few minor hiccups, but the main thing is I don’t know how to migrate between the two versions. Either MacOS to Docker or MacOS to Linux.

I am not opposed to using Docker; like I said above, I have it running as a test instance on my Mac right now. Either way, it will be a bare-metal device, in my case an Intel NUK, likely running Ubuntu 24 or 22, whichever is the current LTS, can’t remember off the top of my head.

I do appreciate the systemd file, it will come in handy if I go the Linux route.

the “data” directory, usually $HOME/.stash

Isn’t there more than just the data folder? LIke the DB or blobs and tag info and things?

db should be in that folder: stash-go.sqlite, blobs and things will also be in that folder under blobs unless you have it specifically stored elsewhere

I will look around and see, worse case I can redo everything, my stash is not that big. And kind of want to change up a few things. Appreciate the information.