this post was submitted on 12 Feb 2024
47 points (96.1% liked)

Piracy: ꜱᴀɪʟ ᴛʜᴇ ʜɪɢʜ ꜱᴇᴀꜱ

53948 readers
706 users here now

⚓ Dedicated to the discussion of digital piracy, including ethical problems and legal advancements.

Rules • Full Version

1. Posts must be related to the discussion of digital piracy

2. Don't request invites, trade, sell, or self-promote

3. Don't request or link to specific pirated titles, including DMs

4. Don't submit low-quality posts, be entitled, or harass others



Loot, Pillage, & Plunder


💰 Please help cover server costs.

Ko-FiLiberapay


founded 1 year ago
MODERATORS
 

Hello based people of lemmy,

I have recently started trying out BSDs as an alternative to Linux and found out that Spotify isn't supported. Before you say try it in a browser this doesn't work as spotify has DRM that doesn't work on BSD OSes.

Now is there a way to stream music similar to Spotify? I know there is a downloader program available.

Furthermore do you know what self-hosted options are available? I already have a basic *arr stack and am always up for convoluted server and Linux hijinks.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 2 points 7 months ago (1 children)

"BSDs" are not a monolith. You should actually specify what the hell it is you are talking about. Spotify runs just fine under the Linux ABI on FreeBSD.

[–] [email protected] 1 points 7 months ago (1 children)

Hi, I am currently on GhostBSD but that could change so I didn't want to be too specific in the post. I have tried installing spotify the way you suggest and it just crashes before I can get to a login screen. Do you think there is a way to make it work?

[–] [email protected] 1 points 7 months ago (2 children)

I do not use GhostBSD and am not familiar with it. It can be done on vanilla FreeBSD, you need to bootstrap an Ubuntu base system which is somewhat involved since there is not a package for it. Google is your friend.

[–] [email protected] 1 points 7 months ago (1 children)

I already have an Ubuntu system bootstrapped. It doesn't work. I think I messed it up somehow. Do you have a specific guide?

[–] [email protected] 1 points 7 months ago* (last edited 7 months ago) (1 children)
[–] [email protected] 1 points 7 months ago (1 children)

Those steps are outdated. I specifically had to lookup spotify's directions for installing on Ubuntu as the public key has changed I think. It's also just sort of freezes, it doesn't close or anything. There is a message about the GPU drivers I don't really understand and probably can't fix as that's a kernel issue.

[–] [email protected] 1 points 7 months ago (1 children)

Spotify is just an electron app. You can disable any GPU access just like you can with chrome via a flag.

My point is, unless spotify is trying to call a heretofore unimplemented syscall, it can be made to run. The linuxulator is basically as good as native.

[–] [email protected] 1 points 7 months ago (1 children)

Yeah tbh I made a mess of the Linux environment. I am gonna reinstall and see what happens. There are other potentially GPU related things going on on this system though so IDK. Like I could disable it for that one application but that wouldn't fix the other issues if that makes sense.

The Linuxulator is cool but I kind of don't trust it. Maybe I will try Linux containers.

[–] [email protected] 1 points 7 months ago (1 children)

My advice is to ditch GhostBSD, you are basically putting yourself further into the corner than you already are by trying to use FreeBSD on the desktop.

Linux binaries run just by a syscall shim. There's not much to trust or distrust. If all the syscalls are implemented and mapped to native FreeBSD syscalls, the thing works. Otherwise, it doesn't.

[–] [email protected] 1 points 7 months ago (1 children)

Oh I am sure the kernel support is great. I am more having issues working with chroots directly. I am much more at home managing docker and lxc which are more isolated. I just broke something trying to remove a couple chroots while stuff was still mounted - I think I nuked /home. You don't really have that issue with docker containers or lxc, it's a simple command to remove.

[–] [email protected] 1 points 7 months ago (1 children)

More isolated in which way? You should probably read up on how all this stuff is actually implemented, it will clarify your understanding of what is going on rather than just throwing commands at the wall and seeing what sticks.

[–] [email protected] 1 points 7 months ago (1 children)

I mean docker and especially lxc do a lot more than just chroot. They use cgroups, namespaces, and other stuff that's beyond my paygrade. LXC remaps user IDs for example. That's without getting into tech like gvisor and runsc that further isolates them by restricting system calls and re implementing some of them to increase security. Obviously there are things like privileged containers which have fewer restrictions, but those are the exception not the rule. From what I understand of chroot it only really restricts what files it can see; there is a reason why android supports chroots + termux but not a full docker install. Chroots to me are mainly used for bootstrapping systems and recovering systems. They aren't meant for real virtualization or server work by themselves if you catch my drift.

[–] [email protected] 1 points 7 months ago* (last edited 7 months ago) (1 children)

I know how docker and lxc work and the difference between them and chroots. But you're talking about persistence of changes breaking things. You are right that chroot only operates on the VFS namespace. Jails are the kind of isolation you are after, and in fact were in FreeBSD before containerization was even a word.

Things like remapping user IDs start to pervert the line between userspace and what the kernel gives a shit about. Linux containerization technologies are many things, but elegant they are not.

[–] [email protected] 1 points 7 months ago (1 children)

You can run a Linux Jail/Container in FreeNAS, right?

I am aware jails exist, I had bastille installed before I bricked my system to play with.

[–] [email protected] 1 points 7 months ago* (last edited 7 months ago)

The same as you can in regular FreeBSD, under a bhyve VM running Linux. You can also use the linux ABI in a jail.

[–] [email protected] 1 points 7 months ago (1 children)

Oh and GhostBSD uses FreeBSD packages essentially. It's like how Endeavour OS is to Arch linux of that makes sense.

[–] [email protected] 1 points 7 months ago (1 children)

I am sure they have muddied the waters with some garbage "user-friendly" configuration.

[–] [email protected] 1 points 7 months ago (1 children)

Honestly I haven't found them to do anything daft yet. From my understanding FreeBSD is a pain to configure for desktop usage as it's designed more for servers. Tell me if I am wrong.

[–] [email protected] 1 points 7 months ago (1 children)

Yes, you are wrong. FreeBSD is a general purpose operating system. You install what you need and configure what you need. GhostBSD and its ilk are for weenies.

[–] [email protected] 4 points 7 months ago (1 children)

Now you sound like an Arch kid. I say this as someone who used to be an Arch kid sort of.

[–] [email protected] 1 points 7 months ago* (last edited 7 months ago) (2 children)

I use Arch too. I've been using FreeBSD for 21 years, though. I run everything on it, even this Lemmy instance.

[–] [email protected] 2 points 7 months ago (1 children)

Okay I will probably move to FreeBSD proper eventually. I am still new to this though and likely to break things. I don't want to have to go through a whole process every time I mess up to get a usable working system until I actually know what I am doing.

[–] [email protected] 1 points 7 months ago (1 children)

Install on ZFS root, snapshot a known good, then you can rollback as you wish.

[–] [email protected] 1 points 7 months ago (1 children)

Yeah this might be the way. I have created a FreeBSD current USB drive to install off of. I am thinking the newer slightly less stable version has less GPU issues as that seems to be the main factor.

[–] [email protected] 1 points 7 months ago (1 children)

That almost certainly untrue. Do not run CURRENT, it has INVARIANTS and WITNESS enabled that will make it painfully slow.

[–] [email protected] 1 points 7 months ago (1 children)

That's good to know. Is there also a way to suppress error messages in the installer? They fill the whole screen from one repeating message and I can't actually install it because of that.

[–] [email protected] 1 points 7 months ago (2 children)

Again, it is because you are using CURRENT. Don't use it.

[–] [email protected] 1 points 7 months ago (1 children)

Never used current, I went with stable. What's the solution?

[–] [email protected] 1 points 7 months ago (3 children)

To what? Provide the error message and stop asking to be spoonfed? And you can hit ^L to make the install refresh the screen like with any curses program, fyi.

[–] [email protected] 1 points 7 months ago (1 children)

ubt0: ubt_bulk_read_callback:1131: bulk-in transfer failed: USB_ERR stalled.

Also ctrl+L isn't clearing the screen.

[–] [email protected] 1 points 7 months ago* (last edited 7 months ago)

That is your bluetooth adapter. Just disable it, press 3 at the boot menu to break to loader prompt and set hint.ubt.0.disabled="1" and boot

[–] [email protected] 1 points 7 months ago

It's USB related. Probably an unsupported device. If it's really an issue I can address it later but first I need to get the thing installed. Also I had no idea you could do that with ncurses.

[–] [email protected] 0 points 7 months ago* (last edited 7 months ago) (1 children)

I managed to fix it using some command from a forum luckily.

I now believe it's Bluetooth related. Boads well for using Bluetooth devices.

[–] [email protected] 1 points 7 months ago (1 children)

An idea, maybe just stick to Linux if first class hardware and proprietary software support is what you're chasing.

[–] [email protected] 1 points 7 months ago (1 children)

I hardly use Bluetooth. But yes I don't think FreeBSD will work on my laptop for example. It has issues with the keyboard on that machine.

[–] [email protected] 1 points 7 months ago

Running FreeBSD on a laptop newer than 5ish years old is asking for a bad time no matter what. Linux has Intel and AMD engineers implementing power management for their parts. FreeBSD has no such help. Your laptop will likely be idling at a much higher power consumption than it would under Linux.

[–] [email protected] 1 points 7 months ago* (last edited 7 months ago) (1 children)

Did I say CURRENT? I meant STABLE. Which is weird because shouldn't something called stable be the version you release, but release is a separate one. It's confusing.

[–] [email protected] 1 points 7 months ago (1 children)

You need to read the handbook before you start spouting judgments about the releng process.

STABLE is cut from CURRENT. RELEASE is cut from STABLE.

[–] [email protected] 1 points 7 months ago (1 children)

Yeah I got that thanks. It's a very odd way to label things. It doesn't follow industry standards which are normally: alpha, beta, release candidate, release.

Or even the debian method of: unstable, testing, stable, oldstable.

[–] [email protected] 0 points 7 months ago* (last edited 7 months ago)

Please quote me the relevant "industry standards." It is all perspective, and FreeBSD releng certainly does not cater to what some rando online might think is an intuitive way to name release trains. This has been done this way for 30 years.

[–] [email protected] 1 points 7 months ago (1 children)

Out of curiosity what do you use Linux for and what do you use FreeBSD for? Do you use FreeBSD as a desktop or only as a server?

[–] [email protected] 1 points 7 months ago* (last edited 7 months ago)

Linux on laptops, and certain other servers (TV headend/DVR, APCO P25 SDRtrunk host), and video transfer workstation. FreeBSD on any other servers, routers, and workstations, including my home automation controller (I maintain a fork of Home Assistant for FreeBSD).