Author Topic: PUBLIC BETA: Knossos 0.4.4 (launcher / mod installer)  (Read 20814 times)

0 Members and 1 Guest are viewing this topic.

Offline Goober5000

  • HLP Loremaster
  • Administrator
  • 214
    • Goober5000 Productions
Re: PUBLIC BETA: Knossos 0.3.1 (launcher / mod installer)
I have a branch that I've been working on where the parsing code is about 3/4ths converted to use SCP_string.  Once that's complete, it should only be a small additional step to make it recognize and parse UTF-8.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: PUBLIC BETA: Knossos 0.3.1 (launcher / mod installer)
Small additional step?  You're that sure we have a minimal amount of assumptions in the code that a letter is one byte, etc?  I feel like that's probably the biggest thing that would bite us in the arse trying to add that support anyway.
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline Goober5000

  • HLP Loremaster
  • Administrator
  • 214
    • Goober5000 Productions
Re: PUBLIC BETA: Knossos 0.3.1 (launcher / mod installer)
Well, I meant the small additional step would be to parse UTF-8.  Actually making use of the parsed text (displaying it on the HUD or in messages, for example) would be another step entirely.

 

Offline ngld

  • Administrator
  • 29
  • Knossos dev
Re: PUBLIC BETA: Knossos 0.3.1 (launcher / mod installer)
I think a shaping library like HarfBuzz would be neccessary for full Unicode support (it handles the translation of characters to glyphs).
</Off Topic>

Knossos now has a list of the recent nightlies which is automatically updated daily. To install the most recent nightly, just install the "FSO Nightly" mod. If you want to install an older nightly, open the settings window for "FSO Nightly", go to the "Versions" tab, click on "Edit", select which versions you want and finally click "Apply". Once the installation is done, the nightlies will show up in Settings > Game settings.

I've finished the install counter which will be part of the next release. It only counts how often the mod was installed through Knossos. I haven't figured out how to properly count the downloads through the website since a user might download just one or more files but it would still only be one installation.
It's only a simple note on the side (Preview) but I want to add a proper graph later.

The "Last Played" tab and the FRED button are both finished.
I'm mostly done with the translation support and will hopefully finish within the next few days. (150 strings done, 81 to go)

I've also finished a new settings page that will allow you to tell Knossos which SDL2 and OpenAL library to use.
No new release today but the next one should be done in a few days and will include a macOS build as well.

Thanks to Rear_Admiral_Tarsus, I've discovered that a few dependencies were missing from the Ubuntu package. This will be fixed by the next release as well.

 

Offline niffiwan

  • 211
  • Eluder Class
Re: PUBLIC BETA: Knossos 0.3.1 (launcher / mod installer)
thanks for all that! Looking forward to the next release :)
Creating a fs2_open.log | Red Alert Bug = Hex Edit | MediaVPs 2014: Bigger HUD gauges | 32bit libs for 64bit Ubuntu
----
Debian Packages (testing/unstable): Freespace2 | wxLauncher
----
m|m: I think I'm suffering from Stockholm syndrome. Bmpman is starting to make sense and it's actually written reasonably well...

 

Offline m!m

  • 211
Re: PUBLIC BETA: Knossos 0.3.1 (launcher / mod installer)
I have found an issue with case sensitive and insensitive paths. When I try to install the 2014 MediaVPs I get the following error:
Code: [Select]
Traceback (most recent call last):
  File ".../knossos/knossos/tasks.py", line 379, in finish
    mod.save()
  File ".../knossos/knossos/repo.py", line 833, in save
    shutil.copy(self.logo, logo)
  File "/usr/lib64/python3.5/shutil.py", line 235, in copy
    copyfile(src, dst, follow_symlinks=follow_symlinks)
  File "/usr/lib64/python3.5/shutil.py", line 115, in copyfile
    with open(dst, 'wb') as fdst:
FileNotFoundError: [Errno 2] No such file or directory: '$FS2PATH/Mediavps_2014/knossos.bmp'

Upon closer inspection I noticed that my existing MediaVPs install uses the name "MediaVPs_2014" which has a different case than the path specified above.

 

Offline ngld

  • Administrator
  • 29
  • Knossos dev
Re: PUBLIC BETA: Knossos 0.3.1 (launcher / mod installer)
Found and fixed the bug. Thanks!
The actual installation takes the case problems into account (otherwise you would now have two folders) but the code which saves the metadata (mod.json) and the logo didn't.

 

Offline m!m

  • 211
Re: PUBLIC BETA: Knossos 0.3.1 (launcher / mod installer)
Thanks for the bugfix. Installing mods is working now :yes:

 
Re: PUBLIC BETA: Knossos 0.3.1 (launcher / mod installer)
Seems Knossos doesn't like spaces in folder's name, when I want to play for example Cardinal Spear for SCP.
« Last Edit: February 13, 2017, 04:10:46 am by tomimaki »

 

Offline ngld

  • Administrator
  • 29
  • Knossos dev
Re: PUBLIC BETA: Knossos 0.3.1 (launcher / mod installer)
Huh, apparently FSO doesn't like single quotes in cmdline_fso.cfg... :wtf:
The fix is up on git and will be part of the next release.

EDIT: Translation support done. Here's the file containing all translatable strings.
You can edit that XML file directly but I recommend using Qt Linguist (here's the documentation) because it shows you the updated UI while you're translating.
Install it, grab the latest code snapshot and open the locale/knossos.ts with it. Once you're done feel free to send me the finished file.
If you know how to use GitHub, you can fork the repo, save your finished translation as locale/knossos_<lang code>.ts and send me a PR.

The next release will be tomorrow.
« Last Edit: February 13, 2017, 05:15:54 pm by ngld »

 

Offline ngld

  • Administrator
  • 29
  • Knossos dev
Re: PUBLIC BETA: Knossos 0.4.1 (launcher / mod installer)
The latest release is up. Windows users can use the auto-updater by starting their old Knossos and Linux users should be able to update the installed package.
Download links are in the first post.

Changes since the last release:
  • Installations are tracked now. Every time you install a mod, the counter on fsnebula.org should increase. Please not that the count will only be shown if there've been at least 2 installations.
  • The client is completely translatable (see my last post).
  • You can now launch FRED using a simple button.
  • A new tab called "Last Played" and several small UI tweaks.
  • I've added a note to the Welcome screen which I will most likely remove once I consider Knossos stable. (It tells new users to please post feedback or bug reports in this thread.)
  • A Mac build is now available.
  • A few bugs mentioned in the last posts are fixed.
  • Probably more stuff I forgot...

Since that's done, I've got a few questions:
  • Knossos doesn't update the mod list on its own. You currently have to click on "Update List" to see updates or new mods. I want to automate it so that it updates at least once a day. Any thoughts?
  • Does the auto-updater on Windows work?
  • What's the best way to allow Mac users to update?
  • Is anyone using the fso:// links? (Mod pages on fsnebula.org have a green "Install" button which, when clicked, should launch Knossos to install that mod.)
  • What can I do to make Knossos newbie-friendly?
  • Should I display the forum highlights? Where?

Finally, for anyone wondering about the layout of the mod list: The list is implemented in HTML/CSS/JS and I'm using an embedded web browser (QtWebEngine) to render it.

 

Offline chief1983

  • Still lacks a custom title
  • Moderator
  • 212
  • ⬇️⬆️⬅️⬅️🅰➡️⬇️
    • Minecraft
    • Skype
    • Steam
    • Twitter
    • Fate of the Galaxy
Re: PUBLIC BETA: Knossos 0.4.1 (launcher / mod installer)
Most mac apps that are just a bundle, no scripts or whatever, simply have a mechanism to download the new app, move the current one to the trash, and place the new one in its place.  This should be sufficient.  Even ones with follow up tasks, such as installing command line tools, will check the tools version at the next startup and ask you to upgrade them.  But I doubt that bit applies here.

I would have it check for updates once a day if left running, and on launch.  A manual button should remain in place.  Hopefully that won't result in too much traffic.

I might take a look at your mod list code if you need anything done with it, web dev is my thing :)
Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
Karajorma's 'How to report bugs' | Mantis
#freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

"You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
iamzack:  i dont have hamynerge i just want ptatoc hips D:
redsniper:  Platonic hips?!
iamzack:  lays

 

Offline Axem

  • Administrator
  • 211
Re: PUBLIC BETA: Knossos 0.4.1 (launcher / mod installer)
Here are some suggestions of mine...

https://fsnebula.org/workshop/mods Looking at this...

That page needs some real prettying up. Mod ID I think could be hidden and just be for back end internal use. We've got Mod Title anyway. Let's have the mod bitmap be shown, and perhaps the beginning of the mod description (first 140 characters or something?). Maybe authors could also upload images and/or a link to a youtube video that should show up (as links) with the visible description? First release is nice, but also a "last updated" column, as well as the download counter there too. Also filters! I saw you added those categories before, but I don't see them being used for organizational purposes yet. I think it would really help if there was like a FSO Builds category. It's not obvious to a newbie what they need to actually play.

So there'd be a tab/screen of FreeSpace Open builds, which would all be clearly marked (FSO alone doesn't mean much to a newbie and not all mods guarantee compatibility with the latest and some might need custom builds), and then tab/screens for the different categories. Also I think the MediaVPs should have an unfair advantage with placement so its like a no-brainer to select. So a newbie would be like "ok i have this installer, oh builds, right that's why I'm here. I'll take the version with the biggest number and I'll take these MediaVPs which is labelled as super recommended and then I'll explore these other sections"

I'd also like... just recommend most of those changes to the installer as well. I think ideally both should act as possible in terms of functionality and style.

Launcher specific... Maybe there could be something like a "FSO exe ready/missing/lol what are you doing this is still retail" sort of indicator? Someone running this for the first time may not have properly selected the right exe yet. Like in wxLauncher, it clearly tells you which build you are using. Being quickly able to change builds from the main window is super useful for us devs, I'm not so sure about normal players though... Maybe an advanced mode? :p (Also the launcher can't find FRED right now :()

Sort of related as well, wxLauncher can take a build filename and basically tell you what this build exactly is. Like fs2_open_3_7_5_d is FreeSpace Open 3.7.5 (Debug) which could help people identify special builds. And nightlies have githashes (useful for only them) and a build date (useful for everyone else) so having that info clearly readable would be cool.


Also I think Settings needs to be broken up a bit. Like right now. "Settings" at first I thought it was just launcher settings, and didn't have anything to do with FS Open. So maybe a button that takes you to Launcher Settings and another button that takes you to Game Settings (which can still be the same window in the end, just different parts of that view).

I don't think I'd call the Default flags what it is right now, maybe more like "advanced default settings"?

And I see you have a button to the fs2_open.log which is amazing and I had just spent a paragraph saying you should add so that's awesome. But maybe also as shortcut to the proper config folder (like the right %AppData% folder on windows, or %OSX_EQUIVALENT% or %LINUX_EQUIVALENT% if we get that far)? Gotta be easy to find those screenshots!


Also re: your points...

Does the auto-updater on Windows work?
It didn't for me... I opened it, it didn't say there were updates automatically. I just downloaded a new exe and grabbed the new version.

Is anyone using the fso:// links? (Mod pages on fsnebula.org have a green "Install" button which, when clicked, should launch Knossos to install that mod.)
It did for me!

Should I display the forum highlights? Where?
I think you need a welcome tab. Grab the highlights board rss feed or something and mostly populate it with that. And maybe have a link to whatever welcome guide that the main site will end up having?

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
Re: PUBLIC BETA: Knossos 0.4.1 (launcher / mod installer)
    https://fsnebula.org/workshop/mods Looking at this...

    That page needs some real prettying up.

    Actually, first we need to decide who that page is for. If it's only ever going to be used by modders, it's fine as is. If we're going to start sending users there, then it definitely needs changing. As far as I'm concerned, we shouldn't ever be sending people to the Knossos / Nebula pages. You go to the HLP main page, click download and then do everything through Knossos. I'm against creating yet another external website where we sometimes direct users (like we used to with the SCP site) and then create a huge mess because people are going to all kinds of different places when they have problems (believe it or not we used to get help requests on the SCP site!)

    Similarly, I'm not sure why we're even bothering with the installer any more. Yeah, keep it around for the time being while Knossos is in beta but FFS let's not get into a situation where some people are installing Knossos and others are using the installer / wxLauncher. We need to decide which of the two is going to be the future of FS2_Open and stick with it.


    Does the auto-updater on Windows work?[/list]

    Sort of. Knossos detected the download, grabbed it, started to install and then Avast stuck its nose in and the whole thing fell over.


    Also, I have Diaspora in a different folder from FSO. How can I get Knossos to recognise it?
    « Last Edit: February 14, 2017, 10:13:16 pm by karajorma »
    Karajorma's Freespace FAQ. It's almost like asking me yourself.

    [ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

     

    Offline m!m

    • 211
    Re: PUBLIC BETA: Knossos 0.4.1 (launcher / mod installer)
    FSO has recently gained support for specifying on which display the game should be displayed. Could it be possible to add support for specifying that into Knosses?
    I'm currently looking at the code and I'd like to try and implement that but I'm not very good with python so it may take a while.

     

    Offline karajorma

    • King Louie - Jungle VIP
    • Administrator
    • 214
      • Karajorma's Freespace FAQ
    Re: PUBLIC BETA: Knossos 0.4.1 (launcher / mod installer)
    It would be nice if we could improve the Available tab too.

    At the moment it's only really useful for people who already know which campaign they are after. What we really want is something a bit more impressive with screenshots or even movies showing the game off. I'd like to see something where someone completely new to FSO could just download Knossos, look on the available tab and then make an informed decision to play Diaspora or WoD or BtA.
    Karajorma's Freespace FAQ. It's almost like asking me yourself.

    [ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

     

    Offline niffiwan

    • 211
    • Eluder Class
    Re: PUBLIC BETA: Knossos 0.4.1 (launcher / mod installer)
    How would a heap of screenshots fit into the base window? Or could we put the screenshots/youtube vids in the Info screen, making that larger in the process to fit everything? I'm kinda thinking of the Steam pics/video gallery.

    How about adding 1-3 star ratings in the base window? Not sure how the ratings get set just yet... maybe from Nebula? Which could come back to having Nebula be aimed at players as much as modders?

    edit: I'm also feeling like it'd be good to tie game settings to each mod; it'll make switching between a mod that needs 3.7.4 (BtA) and another that needs a nightly (JAD). Perhaps the whole game settings section should be per mod? The download is then setting your preferred values for each mod, not sure how to get around that at the moment as opaque inheritance (only idea I had so far) could be hard to understand what's really going on.

    Also, you can also break Knossos by selecting a exec that doesn't work for whatever reason, once you close the settings window you can't reopen it to change your FSO exec. This is the error if you run from the cmdline:

    Code: [Select]
    ERROR:MainThread:launcher.my_excepthook: UNCAUGHT EXCEPTION!
    Traceback (most recent call last):
      File "/usr/share/knossos/knossos/windows.py", line 280, in show_settings
        SettingsWindow()
      File "/usr/share/knossos/knossos/windows.py", line 453, in __init__
        self._tabs['fso_flags'] = tab = FlagsWindow(window=False)
      File "/usr/share/knossos/knossos/windows.py", line 1235, in __init__
        self.read_flags()
      File "/usr/share/knossos/knossos/windows.py", line 1238, in read_flags
        flags = api.get_fso_flags()
      File "/usr/share/knossos/knossos/api.py", line 138, in get_fso_flags
        rc = run_fs2_silent(['-get_flags'])
      File "/usr/share/knossos/knossos/runner.py", line 332, in run_fs2_silent
        ld_path, missing = fix_missing_libs(fs2_bin)
      File "/usr/share/knossos/knossos/runner.py", line 275, in fix_missing_libs
        fixed_name = get_lib_path(ctypes.util.find_library(ld_name.group(1)))
      File "/usr/share/knossos/knossos/runner.py", line 240, in get_lib_path
        data = util.check_output(['ldconfig', '-p'], env={'LANG': 'C'}).splitlines()
      File "/usr/share/knossos/knossos/util.py", line 303, in check_output
        return subprocess.check_output(*args, **kwargs)
      File "/usr/lib/python3.5/subprocess.py", line 626, in check_output
        **kwargs).stdout
      File "/usr/lib/python3.5/subprocess.py", line 693, in run
        with Popen(*popenargs, **kwargs) as process:
      File "/usr/lib/python3.5/subprocess.py", line 947, in __init__
        restore_signals, start_new_session)
      File "/usr/lib/python3.5/subprocess.py", line 1551, in _execute_child
        raise child_exception_type(errno_num, err_msg)
    FileNotFoundError: [Errno 2] No such file or directory: 'ldconfig'

    (and I don't know why the exec I chose doesn't work, I can't remember which one I selected :()
    « Last Edit: February 15, 2017, 05:22:05 am by niffiwan »
    Creating a fs2_open.log | Red Alert Bug = Hex Edit | MediaVPs 2014: Bigger HUD gauges | 32bit libs for 64bit Ubuntu
    ----
    Debian Packages (testing/unstable): Freespace2 | wxLauncher
    ----
    m|m: I think I'm suffering from Stockholm syndrome. Bmpman is starting to make sense and it's actually written reasonably well...

     

    Offline karajorma

    • King Louie - Jungle VIP
    • Administrator
    • 214
      • Karajorma's Freespace FAQ
    Re: PUBLIC BETA: Knossos 0.4.1 (launcher / mod installer)
    The base window is resizable. There's no reason we have to stick with its current size. If we give each mod more space to set out their stall as it were, we'd have more people wanting to play the new stuff. I've barely used Steam but GOG Galaxy does much the same sort of thing, allowing you to click on any game and open up a page with news, images and videos of the game.

    Ratings could be handled via the Knossos client itself or via Nebula. The Last Played tab show which campaign you've just played, why not let people rate it from there?
    Karajorma's Freespace FAQ. It's almost like asking me yourself.

    [ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

     
    Re: PUBLIC BETA: Knossos 0.4.1 (launcher / mod installer)
    Okay, this is weird: Knossos launches, but it won't give me any option to point it to a Freespace 2 installation or something similar. It seems forever stuck in a "Loading..." screen.

     

    Offline chief1983

    • Still lacks a custom title
    • Moderator
    • 212
    • ⬇️⬆️⬅️⬅️🅰➡️⬇️
      • Minecraft
      • Skype
      • Steam
      • Twitter
      • Fate of the Galaxy
    Re: PUBLIC BETA: Knossos 0.4.1 (launcher / mod installer)
    Lots of good suggestions here but if we're talking about replacing wxlauncher/5.5g/fso installer with it, we probably need to focus on s stable most viable product, and then enhance from there.  I wasn't expecting this to be ready for the mainstream by the 3.8 release but feel free to prove me wrong :)
    Fate of the Galaxy - Now Hiring!  Apply within | Diaspora | SCP Home | Collada Importer for PCS2
    Karajorma's 'How to report bugs' | Mantis
    #freespace | #scp-swc | #diaspora | #SCP | #hard-light on EsperNet

    "You may not sell or otherwise commercially exploit the source or things you created based on the source." -- Excerpt from FSO license, for reference

    Nuclear1:  Jesus Christ zack you're a little too hamyurger for HLP right now...
    iamzack:  i dont have hamynerge i just want ptatoc hips D:
    redsniper:  Platonic hips?!
    iamzack:  lays