I only use my own installer scripts with LURE, so I’m not sure about the safety of the publicly available repos. But the project itself seems to be pretty solid and reliable.
I fuck numbers.
I only use my own installer scripts with LURE, so I’m not sure about the safety of the publicly available repos. But the project itself seems to be pretty solid and reliable.
AUR. If it doesn’t exist on AUR (very unlikely, but happens sometimes), I make a package for it.
On non-arch distros, I often use LURE.
Navidrome does that. I think you just used a bad frontend. Try Tempo if you’re using Android. Or Feishin on desktop.
I’ve been very happy with Navidrome. I have it accessible on a subdomain, so I can just use it from wherever I want. Feishin is a great frontend for Linux desktop, and Tempo is a great frontend for Android.
My friend uses Jellyfin instead of Navidrome, and he’s also happy with it. Both the frontends that I mentioned work with Jellyfin as well.
I mostly eat leftovers from last night’s dinner for lunch.
Right in front of me is a guy editing a >10 page LaTeX file in Overleaf on a 13 inch laptop. The sidebar takes like 1/3rd of the screen. The editor in around 3 inches in width, and he needs to zoom into the PDF preview to read it.
My point in, some people simply don’t care about anything.
I’ve heard many people complain about DuckDNS. Personally use desec.io for DDNS and it’s been solid.
What I’ve realized in my (very limited) experience in selfhosting, it’s always best to use a general purpose server OS rather than anything geared to a specific usecase, unless that’s the only thing you’re gonna use it for. So, if you want a separate NAS drive, then it’s a good idea to use TrueNAS on it. But on your main server, it’ll be best to use some sort of RHEL downstream distro like AlmaLinux.
Yeah, dual booting on a single drive causes more harm than good. It’s very annoying, and I’ve seen people think it’s Linux’s fault, saying “I can boot into Windows just fine.” It’s like saying a bully is the better kid since he never has dirty clothes.
It’s good that OP mentioned that it’s “furred”. Otherwise, I could’ve mistaken it for a man.
There’s a (pretty great) movie where cannibalism is treated as a substitute for sex. It’s called Aamis.
I use Syncthing and a bunch of rsync scripts to keep my machines in sync. The stuff I want synced continuously is handled by Syncthing. Other stuff is synced on a daily basis using the rsync scripts and anachron. For Photos, I use PhotoPrism. I simply sync the Photos from my smartphone to a folder and make PhotoPrism scan it on a regular basis using ofelia. For cameras, I need to copy the photos manually, but I don’t think there’s a way around that.
You’re right to feel the same about Google. Don’t use their messaging services. The only way to get true privacy is through transparency à la FOSS software.
You do. You get privacy.
Don’t mean to necrobump. But I have Syncthing GUI working over a very similar setup. Let me know if you still need help setting it up.
I haven’t really done much recursion in Python, but can’t we do a tail-recursive version so that it (almost) never reaches recursion depth issues?
You’re pretty much right on the money. In Haskell, a String
is a type synonym for [
, so we can use the list concatenation function ]++
to join strings. ++
is an infix function i.e. [3,4,5] = [1,2,3,3,4,5]
(which will be equivalent to doing ] ++ [(++) [1,2,3] [3,4,5]
by virtue of how infix functions work in Haskell). When we do (++ "a")
, we create a partially applied function. Now, we can supply another string to it and it will add "a"
at the end of it.
iterate f x
produces a lazily evaluated sequence [
. So, to get the nth entry, we can do ]wine !! n
where we use another infix function !!
. With partial application, we can modify the definition of wine
to create a function that takes an Int
n and spits out the nth entry of it by doing
wine = (!!) $ iterate (++" Is Not an Emulator") "WINE"
We needed to wrap the !!
inside parentheses because it’s an infix function. just changes the order of application. (IIRC, it’s the least significant function.) You can think that we’re wrapping whatever’s on the right of the
by parentheses. Now we can do
wine 2
instead of wine !! 2
to get "WINE Is Not an Emulator Is Not an Emulator"
.
I’m by no means a Haskell expert. (I’m not even a professional programmer lol.) So, if someone would like to add some more details, they’re more than welcome.
Edit: A much more readable version might be
wine 0 = "WINE"
wine n = wine (n-1) ++ " Is Not an Emulator"
Sorry, I should’ve specified, it’s in Haskell. Idk where you tried running it.
wine = iterate (++" Is Not an Emulator") "WINE"
Were all the tests available at the same time? Usually there are different times for submitting tests and also for assignments. I’ve never taken a course where you can just submit them whenever you want. For assignments, maybe, possibly with some penalty. But never for tests.