Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
GTK Selector 1.1-Win
{{#eclipseproject:technology.higgins|eclipse_custom_style.css}}
This page describes the GTK Selector 1.1-Win variant of the Higgins Selector developed as part of Higgins 1.1. It is a native code selector for Windows based on the GTK UI toolkit. This selector uses a local card store to store its Information Cards, but can also be configured to synchronize these cards with a remote CardSync Service.
Contents
End-User Perspective
For an introduction to Information Cards and Selectors visit http://informationcard.net
Installation on Windows
An installer for the GTK Selector 1.1-Win is available in the Azigo Developer Center.
Configuration
The GTK Selector 1.1-Win uses the "%HOMEPATH%\.ftk\settings\58EB0021-F939-48BA-B872-E93C4B380D4F\settings.xml" as a configuration file. If this file doesn't exist, it will create one with the default settings the first time it starts up.
Using a CardSync Service
By default this selector stores its cards in the "%HOMEPATH%\.iss\iss_cards" folder. However, the selector can be configured instead to store its cards in a local ISAMDatadase (that is pre-configured to use the "%HOMEPATH%\.iss\hscs_cards" folder) and to synchronize cards from this database with a remote CardSync Service endpoint.
To configure the selector to use a CardSync service, the configuration file (settings.xml mentioned above) should be manually updated to include a CARDS section as is shown in the following example.
<?xml version="1.0" encoding="utf-8" standalone="yes"?> <Settings> <Section Id="CARDS"> <Setting Name="STORE.TYPE" Data="urn:org:eclipse:higgins:cardstore:type:hcsp"/> <Setting Name="STORE.URI" Data="http://rh155.azigo.net/cardsync-new/rs"/> <Setting Name="STORE.USERNAME" Data="testUser"/> <!-- your username goes here --> <Setting Name="STORE.PASSWORD" Data="testPassword"/> <!-- your password goes here --> </Section> <Section Id="gtkui"> <Setting Name="MAIN.X" Data="733"/> <Setting Name="MAIN.Y" Data="116"/> <Setting Name="MAIN.WIDTH" Data="640"/> <Setting Name="MAIN.HEIGHT" Data="480"/> <Setting Name="MAIN.PANEPOS" Data="291"/> <Setting Name="MAIN.COLWIDTH" Data="264"/> <Setting Name="MAIN.SHOWTOOLBAR" Data="true"/> </Section> </Settings>
- Note1: This selector is currently unable to create a new user account on the CardSync Service endpoint. So at the present time you must to use an existing account (username and password) on the rh155.azigo.net I-Card Service endpoint hosted by Azigo.
- Note2: This selector's internal "synchronizing cardstore" implementation is still experimental. It may be necessary to remove the entire "%HOMEPATH%\.iss\hscs_cards" folder when upgrading to a new version of the selector due to possible data format changes in the new version.
Deployer Perspective
Building
The required project is:
- app/org.eclipse.higgins.selector.ui.gtk
This project can be checked out from the Eclipse repository at the following SVN URI:
https://dev.eclipse.org/svnroot/technology/org.eclipse.higgins/trunk/app/org.eclipse.higgins.selector.ui.gtk |
You can check it out from the Eclipse repository using a MS Visual C++ plugin like http://ankhsvn.open.collab.net/, or by using an external SVN tool such as http://tortoisesvn.tigris.org/.
To avoid problems, you should check it out into a directory that does not contain any spaces, e.g. C:\Higgins\org.eclipse.higgins.selector.ui.gtk.
These instructions are for building the solution with MS Visual C++ 2008 Express Edition.
You need the following software:
- cmake - http://www.cmake.org/
- Microsoft Visual C++ 2008 Redistributable Package - http://www.microsoft.com/downloads/details.aspx?familyid=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF&displaylang=en
- OpenSSL (Full version, not Light version) - http://www.slproweb.com/products/Win32OpenSSL.html
- Glade2+GTK - http://gladewin32.sourceforge.net/
To avoid problems, you should install the above software in their default locations (e.g. C:\OpenSSL and C:\Gtk).
You need to add the path to cmake.exe to your PATH environment variable.
The project is designed to be built with cmake, and in order to be able to import it into MS Visual C++, the necessary project files have to be created using the special scripts configure_vs.bat and setupvc.bat, which are included with the org.eclipse.higgins.selector.ui.gtk project. You may have to edit both scripts and adjust local paths before you can run them. Also, you have to change the line
cmake -G "Visual Studio 8 2005" ../..
... to ...
cmake -G "Visual Studio 9 2008" ../..
... depending on which version of MS Visual C++ you are using.
After these steps, you can run the configure_vs.bat script. This will create MS Visual C++ project files in the path build\vc relative to the org.eclipse.higgins.selector.ui.gtk project.
The main MS Visual C++ project file is identityselector.sln. You should be able to open this in MS Visual C++ and run a build.
If during the build you get the error "You appear to be building against the wrong version of OpenSSL", you need to do the following:
- In your OpenSSL installation (e.g. in C:\OpenSSL), open the file include\openssl\opensslconf.h.
- Change all occurences of the string OPENSSL_SYSNAME_WIN64A to OPENSSL_SYSNAME_WIN32.
- Re-run the build
After the build succeeds, in order to run the main executable bin\identityselector.exe, you need to manually assemble a directory structure as follows:
- YOUR_DEPLOYMENT_DIRECTORY\: all files and sub-directories from build\vc\build\share\identityselector
- YOUR_DEPLOYMENT_DIRECTORY\bin\: identityselector.exe and *.dll from build\vc\build\bin\Debug
- YOUR_DEPLOYMENT_DIRECTORY\bin\: libssl32.dll, libeay32.dll and ssleay32.dll from your OpenSSL installation
- YOUR_DEPLOYMENT_DIRECTORY\bin\: msvcm90d.dll, msvcp90d.dll, msvcr90d.dll and Microsoft.VC90.DebugCRT.manifest from your MS Visual C++ installation
Developer Perspective
Architecture
Components, Packages & Services
Components:
- Components 1.1#Higgins_Browser_Extension (HBX)
- Components 1.1#HSS_Manager
- Components 1.1#HSS_Launcher
- Components 1.1#Higgins_Selector_Switch (HSS)
- Components 1.1#Selector_UI (GTK variant)
Packages:
Services:
- CardSync Service - optional web service