Announcement

Collapse
No announcement yet.

LGP Has A New Linux Game Installer

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Svartalf: will LGP be adapting older LGP titles to suit the new installer?

    Will the new installer source code be released?

    Comment


    • #17
      http://xkcd.com/386/

      Originally posted by Vadi View Post
      As for MojoSetup - sure, technically, it sounds great. One flaw (yes, I do consider it one) - it's terminal-based.
      No, it's not. We shipped the UT3 server with just the stdio UI because most admins were hostile to the idea of having an installer at all (they just wanted a .tar.bz2, Epic's legal required that we show a EULA, though). Since most admins would be installing it over a ssh session, basic text to stdio was the best plan.

      My understanding is that TTimo did something similar with ET:QW...I think at the time he shipped it with the ncurses UI.

      MojoSetup also has a GTK+2 UI, and other variations on the way, and has the ability to choose the best UI for the environment at runtime.

      Originally posted by Vadi View Post
      Hello, it even doesn't launch a terminal of it's own when you double-click on it. Forcing you to open a terminal, cd, and run it. Argh.
      Hence the dilemma of needing to set an executable bit on an executable.

      Windows gets around this because they just look for the .exe extension, Mac OS X gets around this because they can ship real disk images with the executable bit set. Linux is...lacking for a decent solution at the moment. makeself gets around this by wrapping your installer in a self-extracting shell script and praying that the desktop does the right thing when you click it but that has a different set of problems.

      Eventually this will need a better solution that involves improvements at the distro layer.

      I really like the Loki installers, and hope this one is just as good.
      It looks like they reached rough parity with the icculus.org branch of loki_setup. I'd be curious to see the changes.

      --ryan.

      Comment


      • #18
        While I'm rambling here...

        ...might as well hit all the other comments, too...

        I think for binary only packages like game it makes sense to have a two path approach:
        MojoSetup does both of these things. The no-GUI mode option you mention looks something like this in the new UT3 server patch:

        ./UT3-linux-server-02202008.bin --ui=stdio -noreadmes --i-agree-to-all-licenses
        --destination /where/i/installed/ut3-dedicated

        It's a little chatty, but it gets the job done.

        In the worst case, they're just self-extracting zip files at the end of the day:

        unzip ./UT3-linux-server-02202008.bin
        cp -R data/* /where/i/installed/ut3-dedicated/


        Will the new installer source code be released?
        I would hope so, it's based on someone else's GPL code.


        LGP has an installed title base out there. We'd have to come up with a converter for the uninstall/patch system already in place with the Loki derived LGP installer/patcher system. Not that we couldn't have done this, but I suspect Michael Simms is thinking in terms of the medium term answers here.
        MojoSetup comes with its own uninstaller now, and will write out loki_setup-compatible XML files, so you can use it with loki_update, etc.

        Granted, all of this work is recent, so it's not like LGP could sit around and hope it got done when they had titles to ship. I pointed out MojoSetup to Michael when I first announced it, and he mentioned he already had someone working on updates to his existing loki_setup fork...and frankly, MojoSetup wasn't ready for prime time when that conversation happened, so moving forward with updates to lgp_setup was definitely the rational course of action (although I'm not sure forking from loki_setup was all that wise, if that's what's happened here).

        I really would like to see the actual changes, since the article here listed things that have been in loki_setup for some time (GTK+2 port and hackish xdg-menu support shipped with Google Earth, large file/install support shipped with UT2003, etc). If nothing else, I'd like to get things merged back into loki_setup where reasonable.

        --ryan.

        Comment


        • #19
          Originally posted by icculus View Post
          ...might as well hit all the other comments, too...
          Heh... Hi Ryan! Glad to see you on here.

          I would hope so, it's based on someone else's GPL code.
          I think I'll ask Michael when the release schedule is for the mods when I get a chance. He's not one to dodge that GPL/LGPL thing- he's already given out a network programming stack for games under the LGPL.

          Granted, all of this work is recent, so it's not like LGP could sit around and hope it got done when they had titles to ship. I pointed out MojoSetup to Michael when I first announced it, and he mentioned he already had someone working on updates to his existing loki_setup fork...and frankly, MojoSetup wasn't ready for prime time when that conversation happened, so moving forward with updates to lgp_setup was definitely the rational course of action (although I'm not sure forking from loki_setup was all that wise, if that's what's happened here).
          I've no idea what he's done on that one. I've not looked at anything except the code on one his titles that went a bit sideways on him of late. And I'd concur on the wisdom of the forking of the code. I DO know that I would rather use MojoSetup in the long term, though- it's a MUCH nicer tool for the job than what we have right now in the stuff we're discussing.

          I really would like to see the actual changes, since the article here listed things that have been in loki_setup for some time (GTK+2 port and hackish xdg-menu support shipped with Google Earth, large file/install support shipped with UT2003, etc). If nothing else, I'd like to get things merged back into loki_setup where reasonable.
          Heh... Same here, honestly. While Mojo's a better tool, there will be people that'll want to use the old Loki setup engine. It may be that it's all of what you're mentioning with tweaks to make it play nice within the build environment toolchains we end up using.

          Comment


          • #20
            Originally posted by icculus View Post
            Hence the dilemma of needing to set an executable bit on an executable.

            Windows gets around this because they just look for the .exe extension, Mac OS X gets around this because they can ship real disk images with the executable bit set. Linux is...lacking for a decent solution at the moment. makeself gets around this by wrapping your installer in a self-extracting shell script and praying that the desktop does the right thing when you click it but that has a different set of problems.

            Eventually this will need a better solution that involves improvements at the distro layer.
            As annoying as that all is, as a security consultant (heh...other hat getting put on right at the moment...), I think that this is an ill-concieved idea, really. One of the things that provides security is that feature of Linux that it can't just run anything dropped on the hard disk without some user intervention. Under Windows and MacOS, you can get zapped with spyware rather readily and easily through that vector.

            How do you think that Sony managed to put that rootkit on all their audio CDs? Through automatic things like that. Nice idea- very unintended consequences.

            Comment


            • #21
              Hi Ryan. Welcome to the board.

              Originally posted by icculus View Post
              MojoSetup does both of these things. The no-GUI mode option you mention looks something like this in the new UT3 server patch:

              ./UT3-linux-server-02202008.bin --ui=stdio -noreadmes --i-agree-to-all-licenses
              --destination /where/i/installed/ut3-dedicated

              It's a little chatty, but it gets the job done.
              That definitely would get it done, but wouldn't it be a little easier if all of the other extra parameters (-noreadmes --i-agree-to-all-licenses) would be assumed under --ui=stdio? Hmm... in retrospect, this is probably for flexibility.

              Although it is true that at the end of the day, these things are really self-extracting sh scripts.

              I wonder how LGP's new installer is different from Mojo.

              Comment


              • #22
                Originally posted by niniendowarrior View Post
                That definitely would get it done, but wouldn't it be a little easier if all of the other extra parameters (-noreadmes --i-agree-to-all-licenses) would be assumed under --ui=stdio? Hmm... in retrospect, this is probably for flexibility.
                By default, the stdio UI is interactive: it asks questions, it makes decisions based on input, etc. The above command line is really just answering all the questions up-front.

                Originally posted by niniendowarrior View Post
                I wonder how LGP's new installer is different from Mojo.
                As an updated loki_setup, it's a radically different beast. Specific features aside, the one thing loki_setup needs more than any specific patch is a complete rewrite...which was largely the impetus for building MojoSetup.

                --ryan.

                Comment


                • #23
                  [fishing]So Ryan, what type of installer does the soon-to-be-released UT3 client use?[/fishing]

                  Comment


                  • #24
                    Originally posted by deanjo View Post
                    [fishing]So Ryan, what type of installer does the soon-to-be-released UT3 client use?[/fishing]
                    Aaand you think he's going to tell you... Good luck with that...

                    Comment


                    • #25
                      Judging how Ryan completely ignored the UT3 thread... it's unlikely you will be able to get anything.

                      Comment


                      • #26
                        Thansk for clarifying that, man! I was speaking of the ETQW installer - the ut3 server is fine, as a server admin surely will know his way around the terminal (or will have to!).


                        I hope your dilemma gets solved. I'll help out the translation problem meanwhile

                        Originally posted by icculus View Post
                        No, it's not. We shipped the UT3 server with just the stdio UI because most admins were hostile to the idea of having an installer at all (they just wanted a .tar.bz2, Epic's legal required that we show a EULA, though). Since most admins would be installing it over a ssh session, basic text to stdio was the best plan.

                        My understanding is that TTimo did something similar with ET:QW...I think at the time he shipped it with the ncurses UI.

                        MojoSetup also has a GTK+2 UI, and other variations on the way, and has the ability to choose the best UI for the environment at runtime.



                        Hence the dilemma of needing to set an executable bit on an executable.

                        Windows gets around this because they just look for the .exe extension, Mac OS X gets around this because they can ship real disk images with the executable bit set. Linux is...lacking for a decent solution at the moment. makeself gets around this by wrapping your installer in a self-extracting shell script and praying that the desktop does the right thing when you click it but that has a different set of problems.

                        Eventually this will need a better solution that involves improvements at the distro layer.



                        It looks like they reached rough parity with the icculus.org branch of loki_setup. I'd be curious to see the changes.

                        --ryan.

                        Comment


                        • #27
                          Wow, lots of interest!

                          Hi everyone.

                          Just as a note, LGP is keen on Mojo Setup and Ryan and I talked about it about 18 months ago and discussed various things we wanted to see in installers and uninstallers. We dont have anything against Mojo, quite the opposite. I said to Ryan at the time I thought he was rewriting the wheel, and he gave me some interesting ideas as to how Mojo would be a real improvement over Loki/LGP setup. And as and when its all done, he should be right.

                          I have plans to move LGP to using Mojo as soon as it is doing all we need it to do, and when it starts getting close then we'll probably switch development effort to it instead of LGP-setup.

                          This includes, but is not limited to, being able to seamlessly support existing products, some of which will be being updated via lgp_update and some then via mojo. Some users may have lgp_update and mojo and thus each updater must be able to handle both types of game or users will be irritated when they run lgp_update and cant update the latest game they have to run mojo_update or whatever instead... its untidy, its not what users want or expect. AFAIK Ryan is aware of the issue and has plans to make Mojo compatible with other installers through some kind of magic spell that only his unwell mind can cast {:-)

                          The code changes for LGP setup are similar to the Loki setup cos we didnt fork, we re-downloaded the source a few months ago and are building from there. The developer working on them has passed changes back to the mailinglist or some other place I forget where, to ensure that anything we do or fix goes back into the main branch and improves the loki installer for all. We'll also be putting the lgp-* source up for download via opensource.linuxgamepublishing.com at such a time as we start bundling it with public products (so far our changes to setup and update have been only released on closed beta tests).

                          We have more changes on the way, Ive tasked my guy with lots of new fun tasks that I'd like to see and he is working on them now. Stuff to come is:

                          Playing sound files on installers
                          Playing videos instead of the static splash image
                          Displaying more than one image instead of the one splash image.

                          All just eye/ear candy but, fun stuff nonetheless {:-)

                          Just as a final note to the guy that was saying we should use rpm/deb/apt/yum/whatever.

                          Just how many installers should we make? We would need to make one per distro VERSION, so fedora thats 8 installers right there. And you say that you know all about the problems of packaging and we should 'just make it good for the majority' - why on earth would we do that?? What we have works for EVERYONE, and requires one type of install. Distrowatch currently records 355 different Linux distros. Lets say half of them are tightly bound to another distro, so say around 175 distros. Lets then say we need to make a minimum of 3 packages per distro to work with the dependancy tree of that distro. So thats 525 packages, lets say it takes an hour to make each package. Thats going to mean a release will take 13 weeks to package up. Right now it takes 2 or 3 hours. Thats to get the same result. Those are finger in the air numbers, so dont bother to tell me how wrong I am cos no matter how wrong I am you cant tell me we can support every single different package manager for every version of every linux distro in 2-3 hours per release...

                          Comment


                          • #28
                            Great news

                            (and that {:-) smiley is so cool man)

                            Comment

                            Working...
                            X