mikebrady / shairport-sync-for-openwrt

This is an OpenWrt package for building and installing Shairport Sync
45 stars 22 forks source link

Suggestion: shairport-sync-minimal for OpenWrt packages feed #11

Closed probonopd closed 8 years ago

probonopd commented 9 years ago

shairport-sync is now in the official OpenWrt packages feed at https://github.com/openwrt/packages/tree/master/sound/shairport-sync; however, it has dbus and avahi-daemon as dependencies which is quite some overhead for tiny embedded systems. Hence it would be great to have a shairport-sync-minimal package that does not have these dependencies; along the lines of https://github.com/probonopd/shairport-sync-for-openwrt/blob/2.1/Makefile

mikebrady commented 9 years ago

Hi there. I've been trying to fix this with a fancy installer package, but I've failed. Perhaps a better approach is for someone (would you be willing to try it yourself?) to submit an alternative package, maybe called shairport-sync-tiny. Ted Hess, who you've been in contact with has done quite a bit of work on the "official" full-fat one, especially on the startup script, using procd, (though I think there's one tiny little bug in it). Perhaps you would have a look as his approach.

mikebrady commented 8 years ago

Hi there. Just in case you missed it (and sorry for the delay in replying) there is just such a package now in trunk OpenWrt.

probonopd commented 8 years ago

Thanks mikebrady, that is very cool. I noticed it but couldn't test it so far as the trunk images for my platforms have a too large kernel size and images don't get built. So, is there a package for chaos calmer, too?

Update: https://github.com/openwrt/packages/commit/d1dda2700a47504568c0cf041c10b137e6784051 seems to have the patch, so I can backport it myself.

mikebrady commented 8 years ago

I don't think that the Chaos Calmer package does the minimal thing, but I have had success back as far as Barrier Breaker with a package of my own. It might take me a couple of days to push it out onto this repository.

probonopd commented 8 years ago

...or so I thought. Running into an error,

make[6]: Entering directory '/home/travis/build/probonopd/shairport-sync-for-openwrt/sdk/OpenWrt-SDK-15.05-ar71xx-generic_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-x86_64/build_dir/target-mips_34kc_uClibc-0.9.33.2/gdbm-1.11/po'
*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version 0.18 but the autoconf macros are from gettext version 0.19.

Full log: https://api.travis-ci.org/jobs/100114089/log.txt?deansi=true

Code: https://github.com/probonopd/shairport-sync-for-openwrt/blob/mini/.travis.yml

mikebrady commented 8 years ago

That's great work – it'll take me a little while to digest it all.

mikebrady commented 8 years ago

Hi there. I've created a new branch here called barrier-breaker and it should also work with Chaos Calmer. Could you give it a try and let me know (the instructions have been updated).

probonopd commented 8 years ago

Argh, getting *** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version 0.18 but the autoconf macros are from gettext version 0.19 now.

Full build logs: https://travis-ci.org/probonopd/shairport-sync-for-openwrt/builds/102962296

mikebrady commented 8 years ago

Thanks. I'll have a look...

mikebrady commented 8 years ago

Ok, so I've had no trouble building a "Chaos Calmer" version of OpenWrt with Shairport Sync using the barrier-breaker branch of this repository. I used a clean download of Chaos Calmer and updated all feeds as described in the instructions here. The target device was the default. My building platform is Ubuntu 14.04 LTS with all updates. I've never used Travis CI, I'm afraid.

mikebrady commented 8 years ago

BTW, see #13.

mikebrady commented 8 years ago

Have you tried requiring the Trusty (Ubuntu 14.04 LTS) distribution in your Travis build specification?

probonopd commented 8 years ago

Excellent suggestion, thanks. Will try that.

mikebrady commented 8 years ago

I got a Travis CI workflow working, I think, with Barrier Breaker. I borrowed liberally from your .travis.yml file, but departed from it where I didn't understand it. Thanks for all the work you've done on it. I've learned a lot.

probonopd commented 8 years ago

Thank you very much. Works for me as well now. Binaries for barrier breaker on, e.g., https://github.com/probonopd/shairport-sync-for-openwrt/releases/download/20160119/shairport-sync-mini_2.6-1_ar71xx.ipk