FirstClass för Windows i Linux

Från Fria Programvaror Wikin
Hoppa till: navigering, sök
Wine glossy tux.png

Introduktion: Att köra Windows-versionen av FirstClass i Ubuntu och andra Linuxsystem

FirstClass för Linux finns bara på engelska i version 10.014 från 2011 och existerar tyvärr inte som senare klient-versioner. Folkbildningsnätet och många andra FirstClass-nät kör numera en betydligt nyare serverversion. Dessutom har den gamla Linuxklienten inte uppdaterats på många år och fungerar inte i nyare Linuxsystem pga att äldre systempaket krävs (libqt3-mt och libqt3c102-mt). Därför rekommenderas alla som använder Linux och vill använda klientprogrammet att istället via programmet Wine installera och köra FirstClass-klienten för Windows. Ju nyare Wine-versionen är i Ubuntu desto bättre funkar det och gäller även andra fria Linuxbaserade operativsystem.

Steg 1: Installation av Wine

Det första man behöver göra är att installera programmet Wine så att man kan köra windows-program i Linux.

Instruktioner

  1. Installera Wine med din pakethanterare. Du kan även installera den senaste versionen av Wine från ett extra programförråd via Launchpad ubuntu-wine/ppa enligt dessa instruktioner, välj sedan att installera t ex paketet wine1.8 för senaste stabila versionen i skrivande stund. Ju nyare version av Wine desto bättre funkar det. För andra Linuxdistributioner se denna sida.

  2. Ladda hem installations-exe-filen för FirstClass 11.005 för Windows. Det är viktigt att välja denna version då det är bekymmer med senare klient-versioner (se nedan). I en del varianter av Ubuntu så måste du först högerklicka på filen FC11005SE.exe du laddat ner och välja Egenskaper -> Rättigheter -> och bocka i Tillåt körning av filen som ett program.

  3. Högerklicka på den nedladdade EXE-filen, välj "Öppna med Wine..." och installera FirstClass som man gör i Windows.

  4. Därefter finns FirstClass för Windows under Program -> Wine -> Program -> FirstClass -> FirstClass. Du bör även ha fått en ikon på ditt skrivbord.

Steg 2: Öpnna länkar och filer direkt i Linux-program från Windows-versionen av FirstClass

För att fixa så att när man kan klicka på länkar i meddelanden så öppnas sidan i t ex Firefox och att bilagor öppnar sig direkt i Ubuntu eller andra Linuxdistributioners motsvarande program såsom LibreOffice för office-dokument så gör enligt nedan.

Instruktioner

1. Ladda hem open_native.reg: Högerklicka här och välj Spara länk som... i mappen Hämtningar.

2. Ladda hem winenative: Högerklicka här och välj Spara länk som... i mappen Hämtningar. Se till att filen har namnet "winenative" och ingenting annat. I vissa fall när man laddar ner kan fil-ändelsen .txt läggas till, ta i så fall bort denna.

3. Öppna ett terminalfönster genom att trycka ner tangenterna CTRL+ALT+T. Kopiera en rad åt gången nedan och klistra in i terminalen med CTRL+SHIFT+V och tryck enter.

cd Hämtningar

sudo cp winenative /usr/bin/winenative

sudo chmod 755 /usr/bin/winenative

regedit open_native.reg

Efter första kommandot kommer det administrativa lösenordet begäras där inga "lösenords-stjärnor" syns när man skriver det, följt av enter. Inga meddelanden ska annars synas i terminalen efter varje rad vilket då betyder att allt är som det ska vara.

Se denna film hur man kan göra ovan i Ubuntu 14.04.1 (videon är gjord på en live-usb så lösenordet behövde inte knappas in i terminalen i exempelfilmen)

Winenative och olika skrivbordmiljöer

För att kunna öppna filer i t ex Ubuntu 14.04 som använder skrivbordsmiljön Unity så måste du ändra en rad i winenative. Efter att ovan är gjort så öppna en terminal och kör:

sudo gedit /usr/bin/winenative

Leta efter nedan text:

# If you don't use gnome, change it to your desktop's equivelant, and
# update this comment!
cmd_open="gnome-open";

och ändra till:

# If you don't use gnome, change it to your desktop's equivelant, and
# update this comment!
cmd_open="gvfs-open";

Spara och stäng.

Klart! Nu ska du kunna öppna länkar och bifogade filer i FirstClass för Windows i Ubuntu 14.04 med Unity!

Motsvarande kan göras för andra skrivbordsmiljöer, t ex exo-open (XFCE) eller kde-open (KDE). Man kan också prova xdg-open som ska vara en mera universellt hjälpprogram för att öppna filer oberoende skrivbordsmiljö. Läs mer:

http://budts.be/weblog/2011/07/xdf-open-vs-exo-open

Kända problem

  • Om du efter att ha installerat skripten inte kan öppna en bilaga inne från FC och inget händer när du dubbelklickar på den, så är troligtvis associationen till fil-tilläggsnamnet inte rätt i ditt grafiska gränssnitt i ditt Linuxsystem. Ubuntu: Prova att högerklicka på en fil sparat på din loala hårddisk med det filläggsnamn som inte öppnas från FC och välj Öppna med -> Annat program -> Välj program -> Bocka i Kom ihåg detta program för XXX-filer.
  • Problem med inloggning om du använder FCC 11.017 och senare: Programmet hänger sig om du trycker Enter när du skrivit lösenordet i inloggningrutan. Problem med att hitta inställningsfilen home.fc finns även. Workaround: installera FCC 11.005 (laddas ner här) eller tryck på den gröna inloggningsknappen! Bugg #29150 på WineHQ.org
  • Vid längre tids inaktivitet som inloggad så dyker en dialogruta upp som säger att du är utloggad. Att klicka OK fungerar inte utan fönstret är kvar. Lösningen är att trycka på ESC-knappen på tangentbordet så försvinner dialogrutan så man kan logga in igen.

Källkod och uppdateringar

  • Uppdaterat 2011-11-10: Nu stöds 25 filformat; DOC, DOCX, DOT, DOTX, ODB (Base databas), ODF (Math formler), ODG, ODT, ODP, ODS, OTS (Mall Writer), OTT (Mall Writer), OTP (Mall Impress), PDF, PPD, PPDX, PPS, PPSX, PPT, PPTX, RTF, XLS, XLSX, XLT, och XLTX.
  • Uppdatering 2011-11-14: Lagt till WPS (Works) då LibreOffice stödjer detta format.
  • Uppdatering 2011-11-23: Lagt till HTML så att man kan öppna html-meddelanden lokalt utan felmeddelanden från Wine.


Källkoden för de två filerna winenative och open_native.reg:

Innehåll skriptet open_native.reg (Source)

REGEDIT4 
  
[HKEY_CLASSES_ROOT\.doc] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.docx] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.dot] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.dotx] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.html] 
@="linuxnative" 
"Content Type"="application/linuxnative" 

[HKEY_CLASSES_ROOT\.odb] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.odf] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.odg] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.odt] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.odp] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.ods] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.ots] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.ott] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.otp] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.pdf] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.ppd] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.ppdx] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.pps] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.ppsx] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.ppt] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.pptx] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.rtf] 
@="linuxnative" 
"Content Type"="application/linuxnative" 

[HKEY_CLASSES_ROOT\.wps] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.xls] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.xlsx] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.xlt] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\.xltx] 
@="linuxnative" 
"Content Type"="application/linuxnative" 
 
[HKEY_CLASSES_ROOT\http] 
 
[HKEY_CLASSES_ROOT\http\shell] 
 
[HKEY_CLASSES_ROOT\http\shell\open] 
 
[HKEY_CLASSES_ROOT\http\shell\open\command] 
@="C:\\windows\\system32\\winebrowser.exe %1" 
 
[HKEY_CLASSES_ROOT\htmlfile] 
 
[HKEY_CLASSES_ROOT\htmlfile\shell] 
 
[HKEY_CLASSES_ROOT\htmlfile\shell\open] 
 
[HKEY_CLASSES_ROOT\htmlfile\shell\open\command] 
@="C:\\windows\\system32\\winebrowser.exe %1" 
 
[HKEY_CLASSES_ROOT\linuxnative] 
 
[HKEY_CLASSES_ROOT\linuxnative\shell] 
 
[HKEY_CLASSES_ROOT\linuxnative\shell\open] 
 
[HKEY_CLASSES_ROOT\linuxnative\shell\open\command] 
@="/usr/bin/winenative \"%1\"" 

Innehåll skriptet winenative (Source)

#!/bin/sh
# /usr/bin/winenative
#
# License: GPL >= V3
# Author: A. Tres Finocchiaro
# Modified: May 2008 Hilary BH Wright
#
# Used to call on the native linux OS to launch a filetype in Wine.
# For example, if you have a Microsoft Word document, but want to
# use the Linux version of OpenOffice Writer to open it, simply call:
# @="/usr/bin/winenative "%1""
# in
# HKEY_CLASSES_ROOT\linuxnative\shell\open\command
#
# This assumes you've already added:
# @="linuxnative"
# to
# HKEY_CLASSES_ROOT\.doc --> "Content Type"
#

# The native command to open the file. This can be changed to $1, $2
# if you'd like to set up input variables, or you can type "openoffice"
# or something similar if you'd like to statically map it.
#
# If you don't use gnome, change it to your desktop's equivelant, and
# update this comment!
cmd_open="gnome-open";

# The url of the file. Change to $2, etc if you want to take the 2nd
# input variable in your call.
 
win_file=$1;

# Transform the windows path to the linux path with the 'winpath' command
# (i.e. C:\Windows\Temp\1.doc to /home/tfino/.wine/drive_c/etc)
# NOTE1: The ticks are (` = tilde key) NOT (' = quote key).
# NOTE2: You need the "" here in order to allow for spaces in the path and file names.
# NOTE3: the -u parameter is there just to be sure that you are chnaging from windows paths to linux paths: it is the default.
 
lin_file=`winepath -u "$win_file"`;

# Call the native command passing the linux path enclosed in ""

$cmd_open "$lin_file"; 

# Exit status 1? Manipulate this value to work with errors.
exit 1;


Tack till och källor (Credits)

Stort tack till Peter Curtis, Tres Finocchiaro och Hilary BH Wright för ovan skript som hämtats från http://www.pcurtis.com/oufc.htm och till alla lokaladmin på Folkbildningsnätet ute i Sverige som testat och kommit med tips och förslag!

/Jörgen Q