tryffel / jellycli

Jellyfin terminal client
GNU General Public License v3.0
206 stars 8 forks source link

Suggestion: Shuffle all songs #10

Closed yotoprules closed 3 years ago

yotoprules commented 3 years ago

Hi, This player is great! Although there's just one feature I use all the time that this player doesn't have: shuffle. I would like it if I could just shuffle every song in my collection. Thanks!

EDIT: unrelated, but I am trying to compile it for 32bit linux so I can run this on old PCs with old CPUs. I am able to compile it on: Windows 32bit and 64bit Linux 64bit but I get this error whenever i try to compile on Linux 32bit: # github.com/hajimehoshi/oto ../../go/pkg/mod/github.com/hajimehoshi/oto@v0.3.1/context.go:63:12: undefined: newDriver ../../go/pkg/mod/github.com/hajimehoshi/oto@v0.3.1/context.go:120:18: undefined: driver Is it just outright unsupported? Or am I doing something wrong?

tryffel commented 3 years ago

Hi,

I'll see what I can do about shuffle :+1: .

As for Linux 32-bit, you might have better luck looking for directly in faiface/beep or hajimehoshi/oto projects. e.g. https://github.com/hajimehoshi/oto/issues/118 If you're interested in tinkering, see their documentation and try to get it to work in Jellycli. Also I just noticed that there's new commits in github.com/faiface/beeb (no release, though), which in turn has upgraded to much newer version of oto... You might want to try to upgrade those and see if it fixes the compilation:

# run in Jellycli directory, point to target commit
go get github.com/faiface/beep@d836f29bdc50fe17d80017fc17274b04cd97a631

Which go version and command are you using for compilation?

yotoprules commented 3 years ago

Hi, I forgot to mention, but in order to compile Linux x64, I was unable to do it from the Windows compiler, otherwise I would get the same error. Had to make a Linux virtual machine in which I was then able to compile Linux x64, but not the 32bit version (I couldn't make a 32bit virtual machine because I believe there is no go compiler for 32bit Linux anymore). But I had no issues compiling 32bit windows.

All I did was change GOARCH to 386 and GOOS to linux. Then go compile. "go compile ." and "go compile" seemed to do the same thing.

When I get back home I'll try your suggestion, however I've never used go before so I'm trying to figure this all out haha.

tryffel commented 3 years ago

Yes, as said in the issue comments I linked, it seems you need to provide flag 'CGO_ENABLED=1' when doing cross-compilation.

tryffel commented 3 years ago

Hey, did you manage to build Jellycli in 32-bit? Anyway, I'm closing this issue, since shuffle is now implemented. Please open a new issue if you need help with 32-bit compilation.