Tuesday, December 18. 2007Windows binaries and packagingTrackbacks
Trackback specific URI for this entry
No Trackbacks
Comments
Display comments as
(Linear | Threaded)
Yes, it's a bit of a pain, when compared to Winamp's ~30mb or iTunes' ~120mb (between it and Quicktime). I guess it's better than WMP which is "part of the OS" and so counts as a multi-gb install, right?
A bit of playing around suggests we can probably get it down to somewhere around the iTunes mark if we prune unused icons, and more aggressively get rid of other things we don't need. It's a real pain to do that though and it's bound to break now and then (like everytime someone uses a new icon).
Personally I would take about any size installer for Amarok just so that I could have it run under windows. Though I must admit that would be a bit discouraging to someone who is unfamiliar with Amarok itself.
Shouldn't windows users have the win32libs? and well if they have skype or something like that shouldn't they have the qt libs?
If I use kde in windows I don't think I will only use Amarok, I would also use at least kmail, k3b, kate..., and I wouldn't like to have problems with the kde libs. I think a lot of early adopters of amarok in windows will be kde users and I don't think that breaking the kde libs to make amarok installation smaller is the best thing
While it is true that some of these dependencies might already be installed, the lack of a package manager makes it difficult to do any sane form of dependency tracking and downloading if I understand the issue correctly.
- Nikolaj
The "win32libs" package is a collection of libraries that are dependencies of kde and you can rely on having under unix but aren't shipped with windows. Things like dbus, zlib, bzip, iconv, aspell, etc etc etc.
And we can't just rely on some other app's qt libs for a few reason: - They might be the wrong version - They might be compiled with the wrong compiler - They might be compiled with the wrong compiler flags - They'll almost certain have the wrong directory layout - Even if all the above weren't a problem, how do we reliably find them? What if the user uninstalls the other app and breaks us? And no, I don't think it's acceptable to break other KDE apps (I'm not actually suggesting that as a solution, more to point out we can save a little more space but we wouldn't want to do it). If every app decides to only look out for itself it's a nightmare.
I agree with you, I really don't mind about a 200Mb download if it gives me amarok
The download is only 70 in the worst case scenario, 200 is the decompressed size.
Size doesn`t matter. I want it. What for is fast internet? I would download it even if it is 2 Gigs...
what about pidgeon? those guys managed to run it both on windows and linux and the windows installer did not have monumental sizes?
Pidgin used GTK not QT as a graphical toolkit and is written in just C.
Most of the size comes from KDE. Which is understandable, for what KDE aims to do they need it.
Hmm... How about splitting the install into two "packages": Let's call one of them "Linux compatibility package" (we can spend time on finding a better name later on) and the other "Pure Amarok".
Disadvantage: - Might confuse users. However... I think most of the "first Amarok on Windows" users will be the ones who know it from Linux... Advantages: + People realize that most of the download is needed to provide the foundation for the program, not the program itself. + An Amarok-"Update" (esp. nightlies, alphas, betas etc.) can be rather small. Just a thought...
Have an option in the installer (which will only be the "pure amarok") which checks if you already have the required KDE files installed, and if not will download and install them for you
Why not use static linking? Then the optimizing compiler will trim the unneeded stuff with no effort on your part.
You can't statically link graphics.
And a lot of stuff relies on dynamic linking with the way KDE works.
Technically they could be included using qrc. In practice, though, that would need heavy patching throughout the code, just as statically linking all code would. (I don't think either is really practicable. As you said, a lot of stuff relies on dynamic linking.)
IIRC, at least on Ubuntu people who use gnome just need to install kdelibs and the non-KDE dependencies. Especially, there is no need for all these apps which are part of KDE. So why do people who use win32 have to install kdebase? Stripping it out should already greatly reduce the package's size. Since kdelibs is itself composed of lots of small libraries, one should be able to strip the unneeded libraries out. If it works for gnome, it should also work for win32 pretty easily.
Another point is that breaking all other KDE apps by stripping most parts of it out is't a problem anyway because you could provide both a special sandbox-like edition with only these parts which are vital to Amarok and a part-of-KDE solution which resides in a web-installer that is able to track dependencies itself. This way you provide solutions for both Amarok-only people and KDE-win32 users.
We need kdebase or else you get no icons or sound. Kind of breaks the app without it. Since the phonon backend is in kdebase, you'll probably want to install kdebase on linux for Amarok 2.0 as well.
And you can't sandbox a KDE install, due to things like dcop. Two sandboxed programs wont run happily together, they have to run from the same installation.
The icons thing must have changed from KDE3 to KDE4. If it's like that, you could probably change it by putting the icons in an extra part. Phonon is now in Qt, isn't it? You could link it from there
I'm not that much into the new structures, so don't believe I know that for real
Make available two solutions.
Easy install: Provides the minimal kde libraries for Amarok to work. The libraries will be installed in the same directory as Amarok since they will NOT work for other kde apps. Newbie's installation. Recommmended install: Two separated packages. Amarok + KDE base(may be downloaded from other sites. i.e. koffice). Intended for users who use other kde apps. Experienced users.
Why isn't there a separate kdebase-runtime package, with only the stuff in the kdebase-runtime tarballs (i.e. the kdebase/runtime directory in KDE SVN)? This should solve the "Why do I have to install Konqueror to use Amarok?" type issues. It's also what most the GNU/Linux distributions do. (At least the Fedora packages I'm comaintaining do that.) You'll also need libplasma packaged in some way (kdebase-workspace-libs?) though.
You can try to find out how the guys fom last.fm (5MB) and musicbainz (6MB) managed to get the sizes stripped.
As far as I know both of the apps use (ro used) QT: http://blog.musicbrainz.org/archives/2007/10/picard_qt_enter.html http://www.last.fm/download/
I think the most important thing is getting a stable build, then we can worry about the size
I agree.
Some issues will probably solve themselves, eg Qt 4.4 will have the Phonon backend for Windows so only the icons from kdebase/runtime will really be needed.
As long as the KDE libs end up n "\Program Files\Common Files\KDE" and not Amarok's folder, it shouldn't be a huge problem. Especially if the user also has KOffice 2 installed and both use the same files and do not end up with two duplicate copies of their dependencies in their own folders.
The install layout is unix-like: amarok.exe installs into %KDEROOT%/bin, with various bits in %KDEROOT%/share, etc.
You could just make the smaller amarok download as the only one that is really visible on the website. If the installer is run and it doesn't find the correct version of kdelibs, it can then prompt the user with a little background info and then download and install kdelibs first.
Ugh, I was kind of forced to move back to Windows after an awesome year and a bit of Linux. And I really really miss Amarok. It did everything I wanted, except multiple queuing of the same track. I really really hope a Windows Amarok would be available soon -- It's hard for me to get along without music organizing, album art managing, and lyrics searching, and most importantly queuing. I'm using iTunes right now, and I can't queue tracks, and shuffle just mixes the playlist and makes it harder to find songs, instead of just playing songs randomly out of the organized playlist.
I cannot find amarok for windows anywhere. Could somebody post a link to it?
You can't find it because it hasn't been released yet.
meh windows users cant complain alot of the MS programs require you to install their crap: .net etc... people will just have to realize how good the amarok is then they will move over to it.
|
Amarok LinksCalendarQuicksearchCategoriesBlog Administration |