Comments (7)
Ah dang! Thank you for doing this investigation, I'll add a note about Windows to the README.
from spotify-tui.
@Rigellute this app can support windows very easily. TUI has the crossterm backend which is made to support cross-platform. Although... their implementation uses crossterm 0.9 and 0.12 is already out and they didn't even release my latest patch - done a few months ago - with 0.10 yet.
I tried to move this library over to crossterm just to experiment to how easy it was to swap termion. It was very easily. Please have a look at this fork.
However, I encountered two problems:
- Because TUI uses crossterm 0.9 your library has to support this old one as well.
KeyEvent
(replacement forKey
) does not implementCopy
however, this is going to be fixed in 0.12.2.
Point two is the only blocker, point 1 is not great but it isn't a blocker because a lot is changed since release 0.12.
from spotify-tui.
Hi @roketman09, I've not tried installing on Windows yet.
What issues are you encountering?
from spotify-tui.
Windows installation doesn't work. After investigation, Termion dependency doesn't support Windows.
Here is the error i have:
error[E0433]: failed to resolve: maybe a missing `extern crate sys;`?
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\lib.rs:24:9
|
24 | pub use sys::size::terminal_size;
| ^^^ maybe a missing `extern crate sys;`?
error[E0433]: failed to resolve: maybe a missing `extern crate sys;`?
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\lib.rs:25:9
|
25 | pub use sys::tty::{is_tty, get_tty};
| ^^^ maybe a missing `extern crate sys;`?
error[E0433]: failed to resolve: maybe a missing `extern crate sys;`?
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\async.rs:5:5
|
5 | use sys::tty::get_tty;
| ^^^ maybe a missing `extern crate sys;`?
error[E0433]: failed to resolve: maybe a missing `extern crate sys;`?
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\raw.rs:29:5
|
29 | use sys::attr::{get_terminal_attr, raw_terminal_attr, set_terminal_attr};
| ^^^ maybe a missing `extern crate sys;`?
error[E0432]: unresolved import `sys`
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\raw.rs:28:5
|
28 | use sys::Termios;
| ^^^ maybe a missing `extern crate sys;`?
error[E0425]: cannot find function `get_tty` in this scope
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\async.rs:14:36
|
14 | thread::spawn(move || for i in get_tty().unwrap().bytes() {
| ^^^^^^^ not found in this scope
error[E0425]: cannot find function `get_tty` in this scope
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\async.rs:43:36
|
43 | thread::spawn(move || for i in get_tty().unwrap().bytes() {
| ^^^^^^^ not found in this scope
error[E0425]: cannot find function `set_terminal_attr` in this scope
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\raw.rs:45:9
|
45 | set_terminal_attr(&self.prev_ios).unwrap();
| ^^^^^^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find function `get_terminal_attr` in this scope
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\raw.rs:90:23
|
90 | let mut ios = get_terminal_attr()?;
| ^^^^^^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find function `raw_terminal_attr` in this scope
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\raw.rs:93:9
|
93 | raw_terminal_attr(&mut ios);
| ^^^^^^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find function `set_terminal_attr` in this scope
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\raw.rs:95:9
|
95 | set_terminal_attr(&ios)?;
| ^^^^^^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find function `set_terminal_attr` in this scope
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\raw.rs:106:9
|
106 | set_terminal_attr(&self.prev_ios)?;
| ^^^^^^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find function `get_terminal_attr` in this scope
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\raw.rs:111:23
|
111 | let mut ios = get_terminal_attr()?;
| ^^^^^^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find function `raw_terminal_attr` in this scope
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\raw.rs:112:9
|
112 | raw_terminal_attr(&mut ios);
| ^^^^^^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find function `set_terminal_attr` in this scope
--> C:\Users\Main\.cargo\registry\src\github.com-1ecc6299db9ec823\termion-1.5.3\src\raw.rs:113:9
|
113 | set_terminal_attr(&ios)?;
| ^^^^^^^^^^^^^^^^^ not found in this scope
from spotify-tui.
I forgot to mention that you can run spotify-tui
using the Windows Subsytem for Linux (which is what I've done).
However, natively supporting Windows would be much better for sure.
from spotify-tui.
Now that a new release is out: can the github actions be adjusted to also build and publish for windows? Should i PR that?
from spotify-tui.
@MCOfficer please do! I've been trying to work out how to create the windows binary from github actions and was going to ask for help.
So yes, please create a PR!
from spotify-tui.
Related Issues (20)
- Extereme Delay Between spotify-tui and spotifyd HOT 3
- Homebrew installer marked as deprecated HOT 5
- App plays with computer audio instead of headphone while I am using headphone HOT 1
- cargo install soptify-tui failed. HOT 5
- Alternatives for this abandonware? HOT 2
- Specifying device in configuration file / forcing tui to use specific device
- spt keeps returning to error when I connect to Sonos HOT 2
- Is playing from CLI? HOT 1
- wezterm terminal issue HOT 4
- EQ bars color
- re-run HOT 1
- Can't Access Artist Page HOT 3
- Spotify TUI only works when a song is selected that I have never heard before. HOT 2
- Spotify-tui is not available in Slovenia HOT 5
- "Play recommendations for song/artist" no worky HOT 2
- [Question] Alternative for Free Non-Premium accounts HOT 1
- It would be possible to add support for fresh openssl ? HOT 1
- Getting error when loading spt HOT 2
- Error during brew install HOT 2
- Autoplay plays songs in the search list, instead of playing songs of same type HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spotify-tui.