Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux compatibility in the future? #38

Open
xtremekforever opened this issue Jan 4, 2025 · 2 comments
Open

Linux compatibility in the future? #38

xtremekforever opened this issue Jan 4, 2025 · 2 comments

Comments

@xtremekforever
Copy link

I am interested in this project because it seems like a really cool app. However, I'm wondering if you've though about Linux compatibility since Swift works well on Linux, and a lot of Linux users do use the terminal a lot.

Right now when I try to build the latest main, I get errors:

~/Yatoro/.build/checkouts/ChaosByteStreams/Sources/ChaosByteStreams/DataBuffer.swift:77:21: error: cannot find type 'AsyncLineSequence' in scope
 75 | 
 76 |   /// Return a line sequence that reads from this buffer.
 77 |   public var lines: AsyncLineSequence<AsyncBytes> { get async { await bytes.lines } }
    |                     `- error: cannot find type 'AsyncLineSequence' in scope
 78 | 
 79 |   /// Wait for the buffer to close, then return it as a `String`.

~/Yatoro/.build/checkouts/ChaosByteStreams/Sources/ChaosByteStreams/DataBuffer.swift:77:53: error: getter of noncopyable type cannot be 'async' or 'throws'
 75 | 
 76 |   /// Return a line sequence that reads from this buffer.
 77 |   public var lines: AsyncLineSequence<AsyncBytes> { get async { await bytes.lines } }
    |                                                     `- error: getter of noncopyable type cannot be 'async' or 'throws'
 78 | 
 79 |   /// Wait for the buffer to close, then return it as a `String`.
~/Yatoro/.build/checkouts/ChaosByteStreams/Sources/ChaosByteStreams/DataBuffer.swift:77:21: error: cannot find type 'AsyncLineSequence' in scope
 75 | 
 76 |   /// Return a line sequence that reads from this buffer.
 77 |   public var lines: AsyncLineSequence<AsyncBytes> { get async { await bytes.lines } }
    |                     `- error: cannot find type 'AsyncLineSequence' in scope
 78 | 
 79 |   /// Wait for the buffer to close, then return it as a `String`.

~/Yatoro/.build/checkouts/ChaosByteStreams/Sources/ChaosByteStreams/DataBuffer.swift:77:53: error: getter of noncopyable type cannot be 'async' or 'throws'
 75 | 
 76 |   /// Return a line sequence that reads from this buffer.
 77 |   public var lines: AsyncLineSequence<AsyncBytes> { get async { await bytes.lines } }
    |                                                     `- error: getter of noncopyable type cannot be 'async' or 'throws'
 78 | 
 79 |   /// Wait for the buffer to close, then return it as a `String`.
[11/18] Compiling ChaosByteStreams DataBuffer.swift

Looks like this is an issue in upstream libraries, so I'll file a ticket there as well and see if it's something they can get working....

But yeah, it would be awesome to have this on Linux since I primarily use Ubuntu 22.04 instead of macOS!

@jayadamsmorgan
Copy link
Owner

Hi!

The main issue with Linux right now is that MusicKit framework is not available there, and there is no Apple Music App on Linux so MusicKit could talk to it.

I am still looking for a workarounds, and the most obvious is to use Apple Music Web API, but that will require rewriting a lot of stuff... If you have any ideas feel free to suggest them!

@xtremekforever
Copy link
Author

Okay, that makes sense. So there's no real compatibility there. That's too bad!!! Unfortunately I don't have any ideas there, especially since I'm not familiar with the Apple-provided libraries and things on macOS.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants