I just want something as a proof of concept that this can be for me. I am aware I am the problem.
But everything is wildly difficult for me. I pulled back from docker after realising it was above my skillset, I just want to try home assisstant with a few lights but fair enough it is beyond me.
I opted to install a game, fail. Learn about wine and bottles. Start a bottle and get told I only have 8gb free in directory, I cannot for the life of me see where it is getting that from.
Please god someone tell me there is a step by step for the fucking imbeciles out there on where to start!?
You seem to be reaching for pretty advanced solutions – Docker and HA both require you to read a lot of documentation to get started. Bottles is also a powerful and flexible tool, which is the opposite of simple.
What game are you trying to run? If it’s on Steam it should be a no-brainer, otherwise Lutris can simplify a lot of things.
I doubt you actually need Docker for anything, unless you have a specific use case I would just abandon that. For your lights, I would try searching for “home assistant [model/brand of lights]” and see if you can find a setup that someone else has gotten working that you can mostly copy.
Use an operating system like Linux Mint. It’s very simple. Steam can solve the Wine problem, this can be done by adding a new game into your Steam library. Remember that all the distros have certain goals in mind.
Stick to it! I know it seems overwhelming in the beginning, but you will get used to it at first and then get better with time.
Docker won’t make much sense if you don’t understand the underlying Linux systems and/or applications.
It’s similar with Wine and Bottles. If you don’t get what’s in the bottle, then running the bottle won’t make sense.
Find tasks that run on the native OS. learn to manage Linux itself. skip containers, Snap, virtual machines, etc.
try running a web server using httpd or something.
Yeah I need a basic basic start, hello linux world type shit. Except more basic than that.
Try opening a terminal an typing
echo 'Hello World!'
My two cents: You can forget about Linux for a while. Using a terminal is more important. Here’s a classic guide: https://mywiki.wooledge.org/BashGuideLinux Journey will take you through the basics.
Thank you for this.
Don’t feel bad, I’ve used Linux since 1995 and don’t have enough skills to use Bottles.
I do however game a lot, using mainly Steam and Heroic. You can try to start there.
I did get the Heroic Flatpak on my first install but it wouldnt do wat I needed with emulators…cant remember what it was, I think pcsx2 related.
I used Lutris and it worked great but I am struggling on this install to get it back to where I had it.
Also do you rcommend flatpaks always or just for beginners? I have both firfox and firefox FlatPak installed and same for a few other softwares.
I use Flatpaks for a lot of stuff (Steam, Firefox, and some other stuff that I feel should not have access to my tax returns in the Documents directory). It’s not just for beginners, Flatpaks are useful for other reasons.
Yes I had heard people say to use them wherever they are available but I didnt understand the difference. If it is siloing them then great I’ll use all flatpaks so.
A thing about Linux is that there’s usually like 10 different ways to accomplish something. If you hit a dead end in terms of your ability or tolerance for frustration… just go back to square one and find a different approach. For games, I recommend starting with Steam.
Portainer helped me get my head around docker images. And docker hub sometimes has the steps to configure the container, and sometimes not; many assume everyone knows how to pass bind or volume mounts and bridge or host network stuff.
I played with portainer a while to visually see what thing do.
Then it led to command line and yaml configs stuff after that. Its a learning process.
I’ve been daily driving Linux since the early 00s and docker confounds me too, especially the networking. I’m not familiar with bottles. I just play all my games on steam and it’s seamless.
I’ve gotten exactly one thing to ever run properly in Bottles, and that was an accident lol. Which is weird because I can get things to run in Wine no problem, and I assumed that Bottles would be easier since it’s essentially just Wine with a GUI. But for reasons that elude me, everything I throw at Bottles just doesn’t work. I’ve even taken things that work perfectly well in Wine and setting them up in Bottles with the exact same settings (as far as I can tell) and they just don’t. work. I assume it’s something I’m doing wrong, but there’s no real reason to spend the time to figure it out when Wine is right there getting the job done.
So… you receive plenty of great technical advice, I won’t go there.
I’m sure your title is wrong. I know for a fact that there is plenty of things you did with Linux that looked until then impossible. They do look impossible to most people today. So… yes there are plenty of things you don’t know how to reliably do but you eventually will manage!
I did read a bit from the Greater Good Science Center in Berkeley https://greatergood.berkeley.edu/ and there was a piece specifically on “everytime” or “always” as basically shortcuts during arguments that reframe the situation incorrectly. You surely meant to say “I often get frustrated trying new things on Linux” instead. It sounds like I’m nitpicking, yet simply rephrasing gives a totally new outlook to the situation. We all, literally ALL of us, do struggle when we try something new. We often fail but if we keep on trying, get methodical about it (what was the error message? did I try something similar before? how does it actually work? who could help me? etc) then you are bound to succeed.
So no, you are not the problem. No, you are not an imbecile. No, you do not always fail!
Appreciate this, its absolutely right. It was a moment of frustration for sure, not ready to trow the baby out with the bathwater just yet.
Some distros and technologies can be more complex.
For Home Assistant, consider using Yunohost. It doesn’t require Docker skills. You can find step-by-step guides on their website.
I guess gaming with Linux has always been tricky, you can check ProtonDB to see which games are easily compatible with Linux.
If I were you, I’d make sure to tackle one thing at the time, and set aside some time to figure it out, where the goal is not to for instance play games, but set up a game for play later. That way you can focus on the first part, instead of trying to rush that. So for example, when you are trying to set up Home Assistant, spend time just getting Docker to work first. I’ve fallen into that trap many times before, where I ended up not reading the messages properly because I was impatient and just wanted to get to the end fast. Once you get more familiar with Linux, this stuff gets quicker because more of the steps involved with any task is familiar to you already, and the troubleshooting threads you find on different forums are less Greek.
For specifics:
-
For Docker, when you feel ready to try that again, I’d recommend setting it up together with a GUI, like Portainer. If you follow the official guides to install Docker and then Portainer, you should have a web UI accessible that makes dealing with containers easier. I generally like doing things in the command line, but for containers, I prefer to have a GUI.
-
When it comes to Home Assistant, I’d honestly go for either Home Assistant Green or Yellow from Nabu Casa (you’d support the Open Home Foundation directly this way). If you want to set it up yourself, I’d go the route of a dedicated single board computer, like a Raspberry Pi, and use Home Assistant OS. I tried to set it up as a container as well before, but there are certain limitations you avoid by just running their OS directly on dedicated hardware. It’s been running smoothly for me since I set it up on my Raspberry Pi 4.
-
It is good to learn about Wine and Bottles, but I’d start out with Steam (and Proton), Heroic and Lutris. I’ve had much headaches getting stuff to run properly on Heroic and Lutris, but I think the trick here is to avoid Flatpaks for these sorts of things, because there are many dependencies, and you are dependent on a good permissions setup for Flatpaks. Your mileage may vary though, I’m sure there are plenty of people with painless experiences with Flatpaks here.
-
Before using docker u need learn how to use it,it would be problem no matter what os if u don’t know how to use this technology.Bottles yes or portproton,storage scan u can use gnome disk storage analyzer
Yeah this is the kind of thing I need, a list of what to get through. I know fuck all about cli or ide or anynof that stuff so I have work to do.
A blocky road ahead of you ! It will take some time, don’t try to speed up the process ! Remember the first time you started Windows on a computer ? It wasn’t easy at all ^^’ but now most people know how to start and use a Windows system.
Linux is great, linux is freedom and customization but linux is also a hell of another level of complexity.
I opted to install a game, fail.
I don’t remember ever getting anything to work in Bottles. PlayonLinux is much better (for any sort of app, not just games).
which distro and hardware config? Can’t speak to docker as I don’t use that any more, I’ve yet to get stuck into homeassistant, but games are just click and run on most distros with steam?
I am running the most recent mint on a Dell 7060
I7 8700 processor. 480gb nvme SSD. 1tb HDD 16gb 2666 MHz DDR4 ram Intel UHD graphics 630
Ok, lots of answers focusing on the game, so I think you have plenty of suggestions on what to try there. That being said I have never heard of bottles, I’ve used raw wine and PlayOnLinux before Steam integrated Proton so now I just use that.
For docker it can be daunting, and home assistant is not an easy thing to setup. The thing with docker is that it can be very complex, but you don’t have to worry about the majority of it. I assume you have docker installed, enabled and your user is in the correct groups. Unfortunately Mint/Ubuntu don’t have docker in their normal repos so you probably had to add the docker PPA and install from there. Let’s run a couple of commands to ensure all went well:
sudo systemctl status docker
This should show you the status of the docker daemon, and it should say that it is Active. If you get a no such service type error then docker is not installed, if it’s not shown as active then the daemon is not started and can be done so by running
sudo systemctl start docker
(and you can replace start with enable for it to happen at boot). If it’s Active then awesome, let’s check that your used can run docker commands, try running this:docker run hello-world
if that fails butsudo docker run hello-world
works then your user doesn’t have access, you want to add your user to the docker groupsudo usermod -aG docker $USER
and reboot.Ok, docker hello world is working, what now? Now, I assume you have some idea of what docker is, but in a (wrong but simple) way you can think of it as virtual machines. Let’s try to run some cool stuff in it, there are two main ways, running a long complicated command, or writing those parameters on a file and running a simple command. This file is called a compose file, and should be named
compose.yaml
ordocker-compose.yaml
. let’s try that, create a folder calledsilverbullet
(just because that’s the service we will try, it is a note taking app that I really like) and in there create a filecompose.yaml
and write the following content there (everything starting with#
is a comment I added explaining what that does, and can be removed if you don’t want it):# This defines all of the services we want to run services: # This is the name of the service, it can be whatever you want silverbullet: # The image is the actual thing you want to run image: ghcr.io/silverbulletmd/silverbullet # This tells docker to restart the service if it closed for whatever reason, unless you specifically tell it to stop restart: unless-stopped # This will set environment variables inside the docker. # different services might require different environment variables set environment: # silver bullet uses SB_USER environment variable to set user/password for the main account. We're setting user to admin and password to 123 here - SB_USER=admin:123 # This maps outside folders to inside folders so that your docker container can access them volumes: # Here we're telling it that the ./data folder should be accessible in the /space folder inside the docker # silver bullet stores stuff in the /space folder, so by mapping it to the ./data folder we can keep that data between runs - ./data:/space # This tells docker to map ports from the inside to your host machine, this allows you to access the docker container as if it were running on your machine ports: # This tells it to map the internal port 3000 to the external port 5000, so accessing http://localhost:5000/ from your machine will in fact access the same as http://localhost:3000/ inside docker # Silver bullet runs on port 3000, so we need to expose that port - 5000:3000
Uff, that was a lot, but we’re done, now just run
docker compose up -d
(up to start -d to run as a daemon, i.e. in the background) and you should be able to access http://localhost:5000/ and get to Silver bullet logging in with admin 123, then if you write about something you will see files appearing in thesilverbullet/data
folder.I know that this was a lot in one go, but I chose Silver bullet because it touches all of the most common stuff you’ll need and it’s easy to get going.
Good luck with your self hosting journey, and don’t hesitate to ask if you have any questions.
Hey man thanks for this, hoping to get back on the machine later today but Inreally appreciate your effort here it means a lot and goes a long way.