Skip to content

Wishlist: install securefs on windows using an installer #62

Open
@mhogomchungu

Description

@mhogomchungu

It will be a lot easier for windows users to install securefs and for its frontends to notice if its installed and where it is located on the file system if securefs used an installer and created appropriate registry keys to inform the system where it is installed.

An installer i am familiar with is Inno Setup[1] since i am using it with SiriKali and an example of an install script is below and attached image shows how the installer looks like when it is run.

  1. AppId is already unique since i just created it but you can create a new one to be certain.
  2. MyEXELocation can be changed to a folder where you have securefs binary folder on your system.
  3. Myarch should hold either win32 or win64 and i think you will need two scripts with each script having its own value. These values will direct the installer which binary to package
  4. MyOutPutPath variable should point to where you want the installer to be created on your system.
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

#define MyAppName "securefs"
#define MyAppVersion "0.8.1"
#define MyAppPublisher "netheril96"
#define MyAppURL "https://github.com/netheril96/securefs"
#define MyAppExeName "securefs.exe"
#define MyEXELocation "C:\projects\securefs"
#define MyOutPutPath "C:\projects\securefs.output"
#define Myarch "win64"

[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{B091C801-B1EE-4D9A-9918-035C10B37964}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\{#MyAppName}

OutputDir={#MyOutPutPath}
Compression=lzma
SolidCompression=yes
DisableProgramGroupPage=yes
OutputBaseFilename=securefs-setup
      
[Files]
Source: "{#MyEXELocation}\{#Myarch}\Release\securefs.exe"; DestDir: "{app}\bin"; Flags: ignoreversion
Source: "{#MyEXELocation}\*md"; DestDir: "{app}"; Flags: ignoreversion

[Registry]
Root: HKLM; Subkey: "SOFTWARE\\WOW6432Node\\SECUREFS"; ValueType: string; ValueName: "InstallDir"; ValueData: "{app}" ;Flags: uninsdeletekey

[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
Name: "brazilianportuguese"; MessagesFile: "compiler:Languages\BrazilianPortuguese.isl"
Name: "catalan"; MessagesFile: "compiler:Languages\Catalan.isl"
Name: "corsican"; MessagesFile: "compiler:Languages\Corsican.isl"
Name: "czech"; MessagesFile: "compiler:Languages\Czech.isl"
Name: "danish"; MessagesFile: "compiler:Languages\Danish.isl"
Name: "dutch"; MessagesFile: "compiler:Languages\Dutch.isl"
Name: "finnish"; MessagesFile: "compiler:Languages\Finnish.isl"
Name: "french"; MessagesFile: "compiler:Languages\French.isl"
Name: "german"; MessagesFile: "compiler:Languages\German.isl"
Name: "greek"; MessagesFile: "compiler:Languages\Greek.isl"
Name: "hebrew"; MessagesFile: "compiler:Languages\Hebrew.isl"
Name: "hungarian"; MessagesFile: "compiler:Languages\Hungarian.isl"
Name: "italian"; MessagesFile: "compiler:Languages\Italian.isl"
Name: "japanese"; MessagesFile: "compiler:Languages\Japanese.isl"
Name: "norwegian"; MessagesFile: "compiler:Languages\Norwegian.isl"
Name: "polish"; MessagesFile: "compiler:Languages\Polish.isl"
Name: "portuguese"; MessagesFile: "compiler:Languages\Portuguese.isl"
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
Name: "scottishgaelic"; MessagesFile: "compiler:Languages\ScottishGaelic.isl"
Name: "serbiancyrillic"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl"
Name: "serbianlatin"; MessagesFile: "compiler:Languages\SerbianLatin.isl"
Name: "slovenian"; MessagesFile: "compiler:Languages\Slovenian.isl"
Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl"
Name: "turkish"; MessagesFile: "compiler:Languages\Turkish.isl"
Name: "ukrainian"; MessagesFile: "compiler:Languages\Ukrainian.isl"

screenshot_20180601_073056

[1] http://www.jrsoftware.org/isdl.php

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions