Git Product home page Git Product logo

tremulous-launcher's People

Contributors

jkent avatar redrumrobot avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

tremulous-launcher's Issues

Display copyright info, GPLv2, and other license info screens.

First show copyright info for "Tremulous" and for the launcher/installer itself:
"Tremulous" copyright ©️ 2005-2015 Tim 'timbo' Angus with Darklegion Development, and the Tremulous development community.
Copyright ©️ 2016 GrangerHub

"Tremulous-Launcher" copyright ©️ 2016 Jeff Kent
Copyright ©️ 2016 GrangerHub

Game media for "Tremulous" released under Creative Commons Attribution-ShareAlike 3.0 (CC BY-SA 3.0 US) license.

Please see the file named COPYING for additional details and exemptions.

Next up, display the license and force the user to agree to proceed:
Show the GPL 2 plaintext of the license along with a scrollbar in UI. Display a grayed-out 'I have read and understand the terms and conditions of the license.' checkbox. Show a grayed-out "Next" button. Only after scrolling to the end of the text should the checkbox become available, and after they check it they can click "Next" to proceed with install.

Polymorphize the OS specific details

Cleanup the #if defined(JUCE_<OS>) from Main.cpp.

Maybe something like this to start

class PAL {
public:
    PAL() {}
    virtual bool elevate(const string args) = 0;
    virtual const char* platform() = 0;
    virtual const char* settingsPath() = 0;
    virtual const char* defaultBasePath() = 0;
};

class DarwinPAL : public PAL {
public:
    DarwinPAL()
    {
        settingsDirectory = appDataDirectory.getChildFile("Application Support").getChildFile("Tremulous");
        defaultBasepath = File::getSpecialLocation(File::globalApplicationsDirectory).getChildFile("Tremulous");
    }
    bool elevate(const string args);
    const char *settingsPath();
    const char *defaultBasePath();
}
bool DarwinPAL::elevate(const string args)
{ ... }
const char* DarwinPAL::platform()
{ return "osx"; }

...

Tremulous launcher hangs if you don't have tremulous installed?

PLATFORM: OSX

Perhaps this is not strictly the issue as I am perceiving it, but running the launcher tells me "An update is available!"

So I click the Yep/Ok Option

Next, it is "running Tremulous", and just hangs.


I run tremulous from an local directory, and do not have an "/Applications/Tremulous.app", so perhaps it is hanging for this reason, or perhaps it is supposed to download tremulous first.

Handful of interesting compiler warnings from nettle/

Maybe an issue for this nettle library, but perhaps the code is merely due to outdated files?

The following were identified by XCode.

/Users/viroemer/Develop/tremulous-launcher/Source/nettle/sexp.c:303:14: Passing 'const uint8_t *' (aka 'const unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign
/Users/viroemer/Develop/tremulous-launcher/Source/nettle/sexp.c:319:13: Passing 'const uint8_t *const' (aka 'const unsigned char *const') to parameter of type 'const char *' converts between pointers to integer types with different sign
/Users/viroemer/Develop/tremulous-launcher/Source/nettle/sexp.c:360:16: Passing 'const uint8_t *const' (aka 'const unsigned char *const') to parameter of type 'const char *' converts between pointers to integer types with different sign
/Users/viroemer/Develop/tremulous-launcher/Source/nettle/sexp2rsa.c
/Users/viroemer/Develop/tremulous-launcher/Source/nettle/sexp2rsa.c:63:14: Initializing 'const uint8_t *const' (aka 'const unsigned char *const') with an expression of type 'char [2]' converts between pointers to integer types with different sign
/Users/viroemer/Develop/tremulous-launcher/Source/nettle/sexp2rsa.c:89:9: Initializing 'const uint8_t *const' (aka 'const unsigned char *const') with an expression of type 'char [12]' converts between pointers to integer types with different sign
/Users/viroemer/Develop/tremulous-launcher/Source/nettle/sexp2rsa.c:89:24: Initializing 'const uint8_t *const' (aka 'const unsigned char *const') with an expression of type 'char [11]' converts between pointers to integer types with different sign
/Users/viroemer/Develop/tremulous-launcher/Source/nettle/sexp2rsa.c:91:9: Initializing 'const uint8_t *const' (aka 'const unsigned char *const') with an expression of type 'char [4]' converts between pointers to integer types with different sign
/Users/viroemer/Develop/tremulous-launcher/Source/nettle/sexp2rsa.c:91:16: Initializing 'const uint8_t *const' (aka 'const unsigned char *const') with an expression of type 'char [10]' converts between pointers to integer types with different sign
/Users/viroemer/Develop/tremulous-launcher/Source/nettle/sexp2rsa.c:91:29: Initializing 'const uint8_t *const' (aka 'const unsigned char *const') with an expression of type 'char [15]' converts between pointers to integer types with different sign
/Users/viroemer/Develop/tremulous-launcher/Source/Updater.cpp
/Users/viroemer/Develop/tremulous-launcher/Source/Updater.cpp:26:60: Field 'overallPercent' will be initialized after field 'taskPercent'

Post-install options.

After install, show (already-selected) checkbox options to:

  1. Open the README
  2. Add a desktop icon
  3. Run the updater when windows starts???
  4. ( insert a bit of screen white space )
  5. Add firewall exceptions
  6. Minimize the launcher to system tray/notification area and run "Tremulous"

Show a "Let's Go!" button if the last option is selected, if not, show a "Done" button

Error when running tremulous-launcher

Overview:

PLATFORM: OSX

See below for issue. Perhaps an issue with JUCE-OSX and not with the launcher itself?

JUCE v3.2.0

**********************************************************
Tremulous Launcher
Log started: 31 Aug 2015 6:03:10pm

arg0: -NSDocumentRevisionsDebugMode
arg1: YES
Aug 31 18:03:10 VIROEMER-M-705S Tremulous Launcher[12080] <Error>: ImageIO: CreateMetadataFromXMPBufferInternal  Threw error #203 (Duplicate property or field node)
Checking for public key revocation
  URL: http://trem.jkent.net/updater/revoked.php?fingerprints=fcacad14553e5474d4344a42eb7e2629047746d16ad8141e957a9584d8eb755b
Running Tremulous...

Show the full filename of packages to add (or remove).

If multiple versions of a package are available, let the user select all the ones they desire.
If 2 or more packages would conflict, allow the user to select the appropriate one for their system.

Also show packages which have been revoked and will be removed (if any).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.