Windows Newsreaders under Linux HOWTO

Daniel Quintiliani

<coredump0@mercurylink.net>

2003-09-16
Revision History                                                             
Revision 2.0             2003-09-16            Revised by: dq                
Updated with new name "Windows-Newsreaders-under-Linux-HOWTO," since the     
document now discusses configuration and use of 40tude Dialog as well.       
Windows XP instructions updated for Xnews. Problems and Issues for Xnews     
updated. Acknowledgements updated. Xnews copying instructions updated for    
clarity. Xnews copying section renamed. Prerequisites updated to say that the
standard unzip program might be necessary.                                   
Revision 1.1             2003-09-07            Revised by: dq                
Updated with more Problems and Issues, including binary usage. Updated with  
more DLL files to copy and configure (when using a Windows 98SE              
configuration) for better results. Updated to say that a Windows 98SE        
configuration is preferred, since there are some problems with Windows XP    
"emulation."                                                                 
Revision 1.0             2003-09-01            Revised by: dq                
initial LDP release, some updates                                            
Revision 0.12            2003-08-31            Revised by: dq                
conversion to XML (thanks to Greg Ferguson), various updates                 
Revision 0.11            2003-08-22            Revised by: dq                
various updates                                                              


 This document describes how to set up and use several different Windows
Usenet newsreaders under the Linux operating system using the Wine
"emulator." This document was formerly known as the Xnews under Linux HOWTO.

 The latest version of this document is always available at [http://
www.geocities.com/core_dump_000/Windows-Newsreaders-under-Linux-HOWTO.xml]  
http://www.geocities.com/core_dump_000/
Windows-Newsreaders-under-Linux-HOWTO.xml

-----------------------------------------------------------------------------
Table of Contents
1. Introduction
    1.1. Prerequisites
    1.2. Copyright and License
    1.3. Disclaimer
    1.4. TODO for this document
   
   
2. Xnews
    2.1. Setting up Xnews
    2.2. Running Xnews
    2.3. Problems and Issues
   
   
3. Dialog
    3.1. Setting up Dialog
    3.2. Running Dialog
    3.3. Problems and Issues
   
   
4. Acknowledgements

1. Introduction

 One of the problems with Linux today is the lack of a decent newsreader,
where Windows has several. Under Windows, two of the most popular newsreaders
are Xnews and Dialog.

 Xnews, created by Luu Tran, is a free newsreader for Windows, available from
the website [http://xnews.newsguy.com/] http://xnews.newsguy.com. Here is a
list of Xnews' features listed on the website:

*  100% GNKSA 2.0 (Good Net Keeping Seal of Approval) compliant.
   
*  Plonk file (aka bozo bin).
   
*  Quick filter (type in a regex and only articles whose subject/author
    match it will be shown).
   
*  Score file for advanced filtering.
   
*  Support for multiple servers/identities.
   
*  Subscribed groups can be organized into categories.
   
*  Remappable keyboard.
   
*  Binaries handling (mime, base64, uuencode, what have you).
   
*  Optional header and article caching; plus: folders for permanent
    archival.
   
*  more...
   

 Unfortunately, Luu Tran has decided neither to make his newsreader
open-source nor to release a Linux version. However, there is a way to get
Xnews to work under Linux, although it takes a bit of work.

 Dialog is a newsreader by 40tude. It is available at [http://www.40tude.com/
dialog/] http://www.40tude.com/dialog/. According to the website, "it
supports multiple servers and identities, has filtering/scoring support,
integrated email functionality and binary support including support for
multiparts." The newsreader is "shareware for commercial users and freeware
for private users." It works excellently under Linux.
-----------------------------------------------------------------------------

1.1. Prerequisites

 This HOWTO assumes that:

* The InfoZIP utilities are installed on the Linux machine. These are
    available at [http://www.info-zip.org/pub/infozip/] InfoZIP's web site.
    The unzip program is required if the reader wants to install the software
    without copying from an existing installation. This is a standard part of
    most Linux distributions, but may not be automatically installed.
   
* The Wine "emulator" is installed properly on the Linux machine. To
    download Wine, visit [http://www.winehq.com/] http://www.winehq.com. The
    version used at the time of this writing was 20030813.
   
* The reader of this document has access to a Windows machine. Certain
    files are needed from the Windows operating system. Access to Windows
    98SE is preferred. This HOWTO covers Windows 98SE and Windows XP.
   
* Xnews stable version 5.04.25 is used (the beta version was not tested at
    the time of this writing). The website for Xnews is [http://
    xnews.newsguy.com/] http://xnews.newsguy.com/
   
* Dialog version 2.0 Beta 28 is used. The website for Dialog is [http://
    www.40tude.com/dialog/] http://www.40tude.com/dialog/
   

-----------------------------------------------------------------------------
1.2. Copyright and License

  This document, Windows Newsreaders under Linux HOWTO, is copyrighted (C)
2003 by Daniel Quintiliani. Permission is granted to copy, distribute and/or
modify this document under the terms of the GNU Free Documentation License,
Version 1.2 or any later version published by the Free Software Foundation;
with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
Texts. A copy of the license is available at [http://www.gnu.org/copyleft/
fdl.html]   http://www.gnu.org/copyleft/fdl.html.

  Linux is a registered trademark of Linus Torvalds.
-----------------------------------------------------------------------------

1.3. Disclaimer

  No liability for the contents of this document can be accepted. Use the
concepts, examples and information at your own risk. There may be errors and
inaccuracies that could be damaging to your system, although any damage is
highly unlikely. Proceed with caution; the author(s) do not take any
responsibility.

  All copyrights are held by their by their respective owners, unless
specifically noted otherwise. Use of a term in this document should not be
regarded as affecting the validity of any trademark or service mark. Naming
of particular products or brands should not be seen as endorsements.
-----------------------------------------------------------------------------

1.4. TODO for this document

  This document may eventually contain:

*  This document may be expanded to cover other Windows newsreaders such
    as Forte Free Agent.
   
*  This document may be updated to discuss the usage of event sounds in
    Xnews.
   

-----------------------------------------------------------------------------
2. Xnews

2.1. Setting up Xnews

2.1.1. Configuring Wine for Xnews

 Wine is capable of "emulating" many different versions of Windows. Wine is
not perfect, however; it runs slower than a normal Windows installation and
it is not a stable product. Certain problems occur when running Xnews; these
are discussed in the "Problems and Issues" section of the document.

 Before Xnews can run under Linux, certain files from a Windows installation
need to be copied to the Xnews root directory. Depending on which version of
Windows you have access to, there will be different files to copy and
different instructions for configuring Wine. This document currently covers a
Windows 98SE and a Windows XP configuration. A Windows 98SE configuration is
preferred, since there are some more problems with a Windows XP
configuration. Below are the instructions describing how to configure Wine
for Xnews.
-----------------------------------------------------------------------------

2.1.1.1. Windows 98SE

 If you have access to a Windows 98SE machine, you must set up the Wine
configuration file (found at $HOME/.wine/config) according to these
instructions.

 First, find the section "[Version]" in the .wine/config file, and make sure
that "win98" is the version Wine will imitate:
     [Version]                                                                                 
     ; Windows version to imitate (win95,win98,winme,nt351,nt40,win2k,winxp,win20,win30,win31) 
     "Windows" = "win98"                                                                       

 Second, update the "DllOverrides" section which will tell Wine to use
certain files from Windows rather than Wine.
     [DllOverrides]                                                          
     ; some dlls you may want to change                                      
     "shell"        = "native, builtin"                                      
     "shell32"      = "native, builtin"                                      

 Third, add an entry to the "AppDefaults" section which will also tell Wine
to use certain files from Windows rather than Wine.
    ;; sample AppDefaults entries                                            
                                                                             
    [AppDefaults\\Xnews.exe\\DllOverrides]                                   
    "commctrl.dll" = "native"                                                
    "comctl32.dll" = "native"                                                
    "riched32.dll" = "native"                                                
    "shell.dll" = "native"                                                   
    "shell32.dll" = "native"                                                 
    "comdlg32.dll" = "native"                                                
-----------------------------------------------------------------------------

2.1.1.2. Windows XP

 If you have access to a Windows XP machine, you must set up the Wine
configuration file (found at $HOME/.wine/config) according to these
instructions.

 First, find the section "[Version]" in the .wine/config file, and make sure
that "win98" is the version Wine will imitate:
     [Version]                                                                                 
     ; Windows version to imitate (win95,win98,winme,nt351,nt40,win2k,winxp,win20,win30,win31) 
     "Windows" = "win98"                                                                       

 Second, add an entry to the "AppDefaults" section which will tell Wine to
use certain files from Windows rather than Wine.
    ;; sample AppDefaults entries                                            
                                                                             
    [AppDefaults\\Xnews.exe\\DllOverrides]                                   
    "comctl32.dll" = "native"                                                
    "riched32.dll" = "native"                                                
    "riched20.dll" = "native"                                                
-----------------------------------------------------------------------------

2.1.2. Copying and/or Extracting Required Files

 Several DLL files must first be copied to the root Xnews directory from an
existing Windows installation.

 If Xnews lies on a Windows partition on the same machine, you must copy the
DLL files to the Xnews root directory. Xnews will be run from this directory
on the Windows partition.

 If Xnews is being run on a Linux-only machine, you must download Xnews to
your fake C drive (usually $HOME/c) and extract it into a directory there.
Open up a terminal window, navigate to your fake C drive, and type the
following commands:
     mkdir Xnews                                                             
     mv xnews.zip Xnews                                                      
     cd Xnews                                                                
     unzip xnews.zip                                                         
Alternatively, you may copy an existing Xnews folder to your fake C drive.
The root Xnews directory must include the DLL files mentioned in the
following subsections.
-----------------------------------------------------------------------------

2.1.2.1. Windows 98SE

 If you have access to a Windows 98SE machine, copy the files commctrl.dll,
comctl32.dll, riched32.dll, comdlg32.dll, shell.dll, and shell32.dll (usually
in C:\WINDOWS\SYSTEM) to the root Xnews directory.
-----------------------------------------------------------------------------

2.1.2.2. Windows XP

 If you have access to a Windows XP machine, copy the files comctl32.dll,
riched20.dll, and riched32.dll (usually in C:\WINDOWS\SYSTEM32) to the root
Xnews directory.
-----------------------------------------------------------------------------

2.2. Running Xnews

 Using a terminal window, navigate to the root Xnews directory and type:
     wine Xnews.exe                                                          

 Use Xnews normally, noting the exceptions in the next section, entitled "
Problems and Issues" Note that these are problems with Wine's "emulation",
not Xnews.
-----------------------------------------------------------------------------

2.3. Problems and Issues

2.3.1. Fixed-width fonts and alt.ascii-art

 ASCII art requires fixed-width fonts to view. Clicking the fixed font button
above the message headers will simply lock the message so the vertical
scrollbar won't work.

 The easiest way to deal with this is to go into "Special -> Setup Xnews ->
Fonts and Colors" and select a fixed font for all types of text. The default
"Fixed" will not work; use "Misc Fixed", size 12.
-----------------------------------------------------------------------------

2.3.2. Erasing sections of text

 Selecting sections of text with the mouse and pressing Backspace or Delete
will delete the text from the screen, but for some reason it might still be
there when the message is sent or posted, depending on the window manager.
KDE seems to work fine, but Gnome with Sawfish seems to cause problems.

 The only way to guarantee deleting sections of text is to press Backspace or
Delete for each character. Be careful when holding down keys.
-----------------------------------------------------------------------------

2.3.3. Window sizing problems

 There are several problems relating to the sizing of the windows. When the
CatchUp button is clicked, the main groups list window shrinks and must be
maximized. These are mostly minor annoyances, except...
-----------------------------------------------------------------------------

2.3.3.1. Closing Xnews

 Depending on the window manager (Sawfish has problems with this), it may be
impossible to close the Xnews window, and there is no "Exit" option in the
main menu. To get around this, make sure that the window is sized so that the
terminal used to launch Xnews is accessible, and close that terminal. Do not
press Ctrl-C, etc as this will cause problems. Be sure to click the Save
button to save the newsrc first.
-----------------------------------------------------------------------------

2.3.4. Binary newsgroups

 The posting of binaries to newsgroups does not currently work. An attempted
post will lock at 1% completion and give an error message when the post is
aborted, posting only the text portion of the message. However, the combining
and decoding of binaries works with no problems at all.
-----------------------------------------------------------------------------

2.3.5. Text on some tabs are indented

 If Windows XP is "emulated," certain tabs will have text indented, leaving
some of it out of visibility. The solution is to use Windows 98SE files
instead of XP files. It isn't that important. UPDATED: Version 2.0 of this
document includes new instructions which solve this problem when Windows XP
files are used.
-----------------------------------------------------------------------------

2.3.6. No sample text in font selection dialog

 If Windows XP is "emulated," the font selection dialog will not show sample
text. According to a Wine mailing list message, there are certain
un-"emulated" functions in Windows XP "emulation." Version 1.1 of this
document was updated with new files to copy and configure when using Windows
98SE "emulation" in order to solve this problem. Until the Wine developers
implement these Windows XP functions, use a Windows 98SE configuration to get
around this issue. If a Windows 98SE computer is not available, just apply
changes and look at the main window.
-----------------------------------------------------------------------------

2.3.7. Web links can not be executed

 Web links can not be executed from within the Xnews message window. This is
pretty obvious as there is no integrated Web browser in Wine. However, Wine's
clipboard works with no problem. Select the link and copy and paste into an
open web browser window.
-----------------------------------------------------------------------------

2.3.8. Sound does not work

 Event sounds in Xnews do not currently work. Updated instructions for this
may be included in future versions of this document.
-----------------------------------------------------------------------------

3. Dialog

3.1. Setting up Dialog

3.1.1. Configuring Wine for Dialog

 Wine is capable of "emulating" many different versions of Windows. Wine is
not perfect, however; it runs slower than a normal Windows installation and
it is not a stable product. Certain problems occur when running Dialog; these
are discussed in the "Problems and Issues" section of the document.

 Before Dialog or its installer can run under Linux, certain files from a
Windows installation need to be copied to the directory containing Dialog's
installer, and after installation, Dialog's root directory. Depending on
which version of Windows the reader of this document has access to, there
will be different files to copy and different instructions for configuring
Wine. This document currently covers a Windows 98SE and a Windows XP
configuration. Below are the instructions describing how to configure Wine
for Dialog.
-----------------------------------------------------------------------------

3.1.1.1. Windows 98SE

 If you have access to a Windows 98SE machine, the Wine configuration file
(found at $HOME/.wine/config) must be set up according to these instructions.

 First, find the section "[Version]" in the .wine/config file, and make sure
that "win98" is the version Wine will imitate:
     [Version]                                                                                 
     ; Windows version to imitate (win95,win98,winme,nt351,nt40,win2k,winxp,win20,win30,win31) 
     "Windows" = "win98"                                                                       

 Next, add an entry to the "AppDefaults" section which will also tell Wine to
use certain files from Windows rather than Wine.
    ;; sample AppDefaults entries                                            
                                                                             
    [AppDefaults\\dialog.exe\\DllOverrides]                                  
    "commctrl.dll" = "native"                                                
    "comctl32.dll" = "native"                                                
    "riched32.dll" = "native"                                                
-----------------------------------------------------------------------------

3.1.1.2. Windows XP

 If you have access to a Windows XP machine, you must set up the Wine
configuration file (found at $HOME/.wine/config) according to these
instructions.

 First, find the section "[Version]" in the .wine/config file, and make sure
that "win98" is the version Wine will imitate:
     [Version]                                                                                 
     ; Windows version to imitate (win95,win98,winme,nt351,nt40,win2k,winxp,win20,win30,win31) 
     "Windows" = "win98"                                                                       

 Second, add an entry to the "AppDefaults" section which will tell Wine to
use certain files from Windows rather than Wine.
    ;; sample AppDefaults entries                                            
                                                                             
    [AppDefaults\\dialog.exe\\DllOverrides]                                  
    "comctl32.dll" = "native"                                                
    "riched32.dll" = "native"                                                
    "riched20.dll" = "native"                                                
-----------------------------------------------------------------------------

3.1.2. Copying and/or Installing Required Files

 Several DLL files must first be copied to the root Dialog directory from an
existing Windows installation.

 If Dialog lies on a Windows partition on the same machine, you must copy the
DLL files to the Dialog root directory. Dialog will be run from this
directory on the Windows partition.

 If Dialog is being run on a Linux-only machine, you must download Dialog to
your fake C drive (usually $HOME/c). You must then use the supplied installer
according to the instructions in the subsection below entitled "Using the
Installer." Alternatively, you may copy an existing Dialog folder to your
fake C drive. The root Dialog directory must include the DLL files mentioned
in the following subsections.
-----------------------------------------------------------------------------

3.1.2.1. Using the Installer

 To extract the archive which contains the Dialog installer, open up a
terminal window, navigate to your fake C drive (where Dialog was downloaded
to) and type:
     unzip 40td2b28.zip                                                      
The name of the file may be different depending on the version of Dialog
downloaded.

 In order for the installer to work correctly, certain DLL files from Windows
need to be copied to the directory where the installer is located. If you
have access to a Windows 98SE machine, copy the file riched32.dll to your
fake C drive. If you have access to a Windows XP machine, copy the files
riched20.dll and riched32.dll to your fake C drive.

 Finally, to install Dialog, open up a terminal window, navigate to your fake
C drive, and type:
     wine SETUP.EXE                                                          
Installation of Dialog should work fine from here. Be sure to copy the DLL
files mentioned in the rest of this section to your Dialog root directory
before running the program.
-----------------------------------------------------------------------------

3.1.2.2. Copying required files - Windows 98SE

 If you have access to a Windows 98SE machine, copy the files commctrl.dll,
comctl32.dll, and riched32.dll (usually in C:\WINDOWS\SYSTEM\) to your root
Dialog directory.
-----------------------------------------------------------------------------

3.1.2.3. Copying required files - Windows XP

 If you have access to a Windows XP machine, copy the files comctl32.dll,
riched20.dll, and riched32.dll (usually in C:\WINDOWS\SYSTEM32\ to your root
Dialog directory.
-----------------------------------------------------------------------------

3.2. Running Dialog

 Using a terminal window, navigate to the root Dialog directory and type:
     wine dialog.exe                                                         

 Use Dialog normally, noting the exceptions in the next section, entitled "
Problems and Issues" Note that these are problems with Wine's "emulation,"
not Dialog.
-----------------------------------------------------------------------------

3.3. Problems and Issues

3.3.1. Dragging the vertical scrollbar's placeholder doesn't work

 Dragging the vertical scrollbar's placeholder within the message list will
cause it to bounce back to its original position. To get around this, hold
down the mouse at the down arrow of the scrollbar, or use your mouse's wheel
if it has one.
-----------------------------------------------------------------------------

3.3.2. Strange error message about fontinfo.dat

 You may occasionally get an error message about the file fontinfo.dat
needing to be rebuilt. Ignore this, as it doesn't seem to affect the program
in any way.
-----------------------------------------------------------------------------

4. Acknowledgements

 First of all, I'd like to thank the creators of these newsreaders for
keeping Usenet alive. Hopefully they will release their products open-source.

 I'd also like to thank Vancouverite and the other people in the Gentoo forum
message who described how to run Xnews under Wine using Windows 98SE files. I
built this whole HOWTO on that information.

 I'd like to thank Greg Ferguson, Tabatha Marshall, and Mark Garboden of the
Linux Documentation Project for helping me submit my first HOWTO. Greg
Ferguson translated my first document from plain text to XML.

 Also, thanks go out to the people in news.software.readers for working with
me on this HOWTO, and to Usenet users everywhere for keeping the protocol
alive in the midst of ad-filled, license-binding, scattered Web forums.
