locast2tuner icon indicating copy to clipboard operation
locast2tuner copied to clipboard

Packages for Windows

Open wouterdebie opened this issue 3 years ago • 38 comments

We should have binary packages built for ~~MacOS~~, Windows, ~~Ubuntu~~ and ~~Docker~~.

wouterdebie avatar Apr 05 '21 21:04 wouterdebie

I should be able to work on a Docker version this coming weekend - Rust already has a base image that I think I can use.

eiddor avatar Apr 05 '21 21:04 eiddor

Yeah, getting this docker-ized would be great. I wish I knew more about setting up a Windows installer, so I could help out in getting something put together for that.

Croq360 avatar Apr 06 '21 00:04 Croq360

The Docker version is going to be interesting - I could build it realtime inside of a Rust image, but that would mean a 10 minute process anytime the container is created. There's also the problem of dynamically linked libraries.

Looking at some options now - A lot of this is new to me, so it'll be learning on the fly.

Moving the Docker-specific discussion to #17

eiddor avatar Apr 06 '21 01:04 eiddor

I'm working on packaging. Rust has some really nice crates for doing so. I'm starting with Ubuntu/Debian, but will also create a Windows installer package.

On Mon, Apr 5, 2021, 20:08 Roddie Hasan @.***> wrote:

The Docker version is going to be interesting - I could build it https://hub.docker.com/_/rust realtime inside of a Rust image, but that would mean a 10 minute process anytime the container is created.

Looking at some other options now - A lot of this is new to me.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/wouterdebie/locast2tuner/issues/7#issuecomment-813751644, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABKABTU4FEPDW7OQIJA363THJNKFANCNFSM42NPDCKA .

wouterdebie avatar Apr 06 '21 11:04 wouterdebie

Do you think there would be demand for a Raspbian deb package as well? (yes, I'm still looking at ebbflow's YAML file :-) ).

eiddor avatar Apr 08 '21 21:04 eiddor

@eiddor Possibly.. My next package will be MacOS and publishing to homebrew, but after that, raspbian/arm7 might be a good target.

wouterdebie avatar Apr 08 '21 21:04 wouterdebie

Nice! I figured it would be an easier one since you already have the PPA stuff done.

eiddor avatar Apr 08 '21 21:04 eiddor

Couldn't help myself and added the Raspbian one. Was very easy to do, so why not :)

wouterdebie avatar Apr 08 '21 22:04 wouterdebie

Haha - I was hoping it would be that easy. I'll test it out later.

This is so cool!

image

eiddor avatar Apr 08 '21 22:04 eiddor

Raspbian package works beautifully.

eiddor avatar Apr 09 '21 02:04 eiddor

Just added a MacOS package through homebrew. Windows is the last one (unless we want RPMs) and I wonder what the best distribution mechanism is? Just create a .exe file for download somewhere? Or how does that work in Window? @Croq360 any ideas?

wouterdebie avatar Apr 10 '21 05:04 wouterdebie

I'll let @Croq360 weigh-in, but my thinking is that unless you're going to slap a GUI in front of it or make it a full-on Windows service, it might be better to just distribute it as an EXE file (maybe we put up some other binaries on the releases page as well).

@Croq360 How do you run Plex in Windows? Is it a service?

I was going to suggest that we should just direct Windows users to run it in Docker, but after figuring out #29, I'm not so sure that's the best idea.

eiddor avatar Apr 10 '21 18:04 eiddor

I run Plex as a service, they provide that option. Not opposed to doing the same with locast2tuner, but not real keen on using nssm to run it as a service. As @wouterdebie probably remembers, we had some weirdness with trying to do locast2dvr that way. It would work for a while, but then lock up at some point, and I think I had to keep uninstalling and reinstalling the service to get it going again. Using it as a Windows service would be probably much easier for others too.

The big thing is if my computer is restarted, I want locast2tuner (and in my case, xTeVe) to start up and run again without me needing to do anything.

Croq360 avatar Apr 10 '21 22:04 Croq360

I managed to get a similar program, WinSW, configured and running locast2tuner as a Windows service. Monitoring it currently to see how it goes.

Croq360 avatar Apr 12 '21 14:04 Croq360

@wouterdebie - for Windows packaging, if you can, I think the best way would be to create an installer program.

It could put the locast2tuner.exe file in your "Program Files" folder (or "Program Files (x86)" if you're supporting a 32-bit version of the program). Then, in the user's "AppData" folder, you could create a location there. Note that there is "Local", "LocalLow", and "Roaming" top-level directories inside "AppData", and I don't know what the recommendation is as to where to put your folder (maybe Roaming?). You can use that folder just like you're currently doing for the .locast2tuner folder on *nix systems. If you put your config file there (and other ones), you could use that folder as a default place for the files you need/want to use.

If you can, offering the option to install locast2tuner as a service would be good too. The difficulty there is that you really need to have your configuration stuff set up and know it works before doing the service. Maybe an option for that would be a command-line option to install the service in Windows. If you don't want to mess with that, there are other ways to get it running as a service (like NSSM or WinSW).

All that being said, this project pretty much requires you have a decent amount of technical knowledge to configure everything and get it going, so maybe just providing an executable is enough. And documents could be written on how to configure things.

Croq360 avatar Apr 12 '21 22:04 Croq360

I've been thinking using an actual installer instead of just the binary .exe file. That way we can automate installing it as a service for example. I'll do some research, but I'd probably need your help with some of the windows specific stuff.

wouterdebie avatar Apr 12 '21 23:04 wouterdebie

Sure, I'll help in any way I can. 🙂

Croq360 avatar Apr 12 '21 23:04 Croq360

Just an update to the original purpose of this thread, or at least part of it. Once I changed to use the correct config.ini data, the Docker installation is running fine (Linux container on Windows 10 box).

Croq360 avatar Apr 13 '21 03:04 Croq360

That's what I like to hear.

eiddor avatar Apr 13 '21 03:04 eiddor

Glad to hear there is work on a windows package...I am just not Unix/Docker savvy to figure this out.

Thunder7ga avatar Apr 26 '21 21:04 Thunder7ga

I might be able to do a quick and dirty one where it just produces a .exe file that I'll make available for download. Then later I'll have a look at a proper installer.

On Mon, Apr 26, 2021, 16:11 Thunder7ga @.***> wrote:

Glad to hear there is work on a windows package...I am just not Unix/Docker savvy to figure this out.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/wouterdebie/locast2tuner/issues/7#issuecomment-827149811, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABKABQSGIVU2GUHLQXI4LLTKXJJHANCNFSM42NPDCKA .

wouterdebie avatar Apr 26 '21 21:04 wouterdebie

That would be fantastic when you have time.

I might be able to do a quick and dirty one where it just produces a .exe file that I'll make available for download. Then later I'll have a look at a proper installer. …

Thunder7ga avatar Apr 26 '21 21:04 Thunder7ga

First Thanks to the contributors to this project. I wish I was still sharp enough to keep up with all the new tools you use on these projects. I run a windows server with Plex and Channels running parallel using Python Locast2plex as tuners. The only issues I have is I live in a location that is not served by over the air tv or a Locast region. I have to use a VPN In order to receive Locast. Using the Vpn causes my remote server connections to fail. I have used Docker setups but could not get them to relivable startup on server restarts. Your windows ver. of Locat2tuner will make my setup complete. The Service install is not necessary, I can setup an .exe to run as a service.

kblair1 avatar May 12 '21 14:05 kblair1

@kblair1 thanks for your kind words!

I'm still working on a windows version (on the windows branch), but since I'm not very versed in windows, it's a bit tricky. To get a single .exe file, you can compile locast2tuner on windows, which should be explained in the readme.

wouterdebie avatar May 12 '21 15:05 wouterdebie

@kblair1 - as @wouterdebie mentioned, there are instructions on how to get the files and the commands to run to build it. They work in Windows to create an executable file. Note that it'll be buried down a few directories below where you do the build command. You'll need to run the executable with appropriate command line options in a command prompt.

Once you have that working, you can even use one of the service installers (like WinSW) to get it running as a service. Note that it's not the most straight-forward thing to figure out though. So far, that seems to be working really well for me.

Croq360 avatar May 12 '21 18:05 Croq360

I want to say thanks again. I was able to to create an .exe for my windows machine use. I am using shortcut command line and multi config files to load 3 instances each with a different port for Plex, Emby and Channelsdvr. Plex and Emby work great but Channels loads the Hdhomerun device, loads guide but fails to play or record with several javascript video player errors with reconnecting till fail.

kblair1 avatar Jun 04 '21 17:06 kblair1

With Channels DVR, why couldn't you just use the M3U feed? I've seen people using M3U feeds of Pluto TV and some other IPTV feeds, so theoretically, locast2tuner could work the same way.

Croq360 avatar Jun 04 '21 18:06 Croq360

Good to hear it works. I'm curious why you'd use multiple instances on different ports?

wouterdebie avatar Jun 04 '21 18:06 wouterdebie

I am not very familiar with load capabilities of tuner apps. and thought it might make easer to troubleshoot. Did try M3U a couple of times but no love.

Get Outlook for Android

From: Wouter de Bie @.***>Sent: Friday, June 4, 2021, 12:36 PMTo: wouterdebie/locast2tunerCc: kblair1; MentionSubject: Re: [wouterdebie/locast2tuner] Packages for MacOS, Ubuntu, Windows and Docker (#7) Good to hear it works. I'm curious why you'd use multiple instances on different ports?

—You are receiving this because you were mentioned.Reply to this email directly, view it on GitHub, or unsubscribe.

kblair1 avatar Jun 05 '21 00:06 kblair1

I am not very familiar with load capabilities of tuner apps. and thought it might make easer to troubleshoot.

locast2tuner is multi-threaded and should be fine with running multiple clients and multiple streams (one of the reasons I rewrote locast2dvr from python to rust).

wouterdebie avatar Jun 05 '21 15:06 wouterdebie