reformat some paragraphs
authormatthias <matthias@web>
Wed, 27 Oct 2010 08:10:59 +0000 (01:10 -0700)
committerCharlie <root@leaf.dragonflybsd.org>
Wed, 27 Oct 2010 08:10:59 +0000 (01:10 -0700)
docs/howtos/HowToFirefoxandFlashplayer.mdwn
release28/index.mdwn

index 5bbfd95..fc9aa44 100644 (file)
@@ -59,151 +59,55 @@ rm install_flash_player*gz
 
 * Now restart your Firefox browser
 
-# Alternative: Using nspluginwrapper with the native Flash plugin
+# Alternative: Using a plugin-wrapper under a native environment 
+ . The method described here consists on using ***nspluginwrapper***, from ***pkgsrc***, with a native browser which, in theory, will perform much better if compared to a generic emulated browser. Despite the fact that Flash 9 does not seem to work properly, I managed to get Flash Player 7 working very nicely, and at the time of this writing no crashes were found. (Though: Looks like Flash 9 is performing pretty well under NetBSD, so if you are able to fix it... :-)))
 
-The method described here consists on using ***nspluginwrapper***, 
-from ***pkgsrc***, with a native browser which, in theory, will 
-perform much better if compared to a generic emulated browser. 
+ **Quoted from the package DESCR:**  nspluginwrapper is an Open Source compatibility plugin for Netscape 4 (NPAPI) plugins. It separates the execution environment of the plugin from the browser, allowing a plugin compiled for one ABI to be used in a browser compiled for another.
 
-Procedure tested against DragonFlyBSD 2.6/i386, Firefox 3.6, and flash9 
-on the pkgsrc-2010Q1 branch.
+ First you will need a web browser such as Iceweasel, Firefox, Seamonkey or derived. As an example, here, seamonkey is used. :)
 
-**Note** : Linux emulation support on 64Bit DragonFly is not functional
-  at the time of writing - so you'll need to run 32Bit DragonFly
-  if you want this to work for now.
 
-## Step 1: Setup Linux Emulation Environment
-
-Nspluginwrapper requires that the Linux emulation infrastructure is
-in place in order to correctly deal with the linux format flash plugin.
-
-### Install linux compatibility packages and multimedia/libflashsupport 
-
-  This installs the needed linux packages for flash support, as well as
-installing the core linux emulation environment, and can be done as follows:
-
-    # cd /usr/pkgsrc/multimedia/libflashsupport
-    # bmake package clean
-
-### Configure DragonFlyBSD to run Linux binaries
-
-In order to use Linux emulated binaries, the linux compatibility
-layer needs a bit of setup.
-
-* Load the linux emulator kernel module:
-
-    # kldload linux
-    # kldload aac_linux # note - not 100% sure if needed here..
-
-* Mount linprocfs:
-
-    # mount -t linprocfs none /usr/pkg/emul/linux/proc
-
-* Run Linux ldconfig to setup the linux-side library linker paths:
-
-    # /compat/linux/sbin/ldconfig
-
-The above steps should enable the linux emulation system to work - 
-this can be tested by running a linux command - for example:
-
-    # uname -sr                                   
-    DragonFly 2.6-RELEASE
-    # file /usr/bin/uname /compat/linux/bin/uname 
-    /usr/bin/uname:          ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for DragonFly 2.0.600, stripped
-    /compat/linux/bin/uname: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5, stripped
-    # uname -sr                                   
-    DragonFly 2.6-RELEASE
-    # /compat/linux/bin/uname -sr                 
-    Linux 2.6.16
-    # file /bin/ls /compat/linux/bin/ls              
-    /bin/ls:              ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, for DragonFly 2.0.600, stripped
-    /compat/linux/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.2.5, stripped
-    # /bin/ls -l /compat/linux/bin/ls                
-    -rwxr-xr-x  1 root  wheel  82640 May  6 00:38 /compat/linux/bin/ls
-    # /compat/linux/bin/ls -l /bin/ls                
-    -rwxr-xr-x  1 root wheel 82640 May  6 00:38 /bin/ls
-
-This example shows the different binary formats, as well as the uname
-and path overrides provided by the emulation layer, 
-as well as some some subtle ls formatting subtleties between the two
-systems.
-
-To enable linux emulation at boot, set linux_enable='YES' in your rc.conf,
-and create an fstab entry for the proc filesystem.
-
-### Install nspluginwrapper and ns-flash
-
-Now that the Linux emulation system has been configured and tested, 
-it's time to setup the actual flash portion:
-
-    # cd /usr/pkgsrc/www/ns-pluginwrapper
-    # bmake package clean
-
-This should be all that is needed - however, during my tests, I
-did come across some errors that were related to not having setup
-the emulation layer properly - these errors contained something
-like "Elf type '0' binary unknown" - which means that nspluginwrapper
-is having trouble interfacing with the linux emulation subsystem.
-
-You can check the installation with:
-
-    # nspluginwrapper --list
-    /usr/pkg/lib/netscape/plugins/npwrapper.libflashplayer.so
-      Original plugin: /usr/pkg/lib/netscape/plugins/libflashplayer.so
-      Wrapper version string: 1.2.2
-    /usr/pkg/lib/netscape/plugins/npwrapper.libflashplayer.so
-      Original plugin: /usr/pkg/lib/netscape/plugins/libflashplayer.so
-      Wrapper version string: 1.2.2  
-
-No idea why it lists the plugin twice. From there - use it!
-
-* Check about:plugins in your FireFox url bar - you should see:
-
-    File: npwrapper.libflashplayer.so
-    Version: Shockwave Flash 9.0 r283
-
-* Try it out!
-
-even when working, you might still recieve the following message when 
-starting firefox:
-
-    LoadPlugin: failed to initialize shared library /usr/pkg/lib/netscape/plugin
-s/libflashplayer.so [Shared object "libdl.so.2" not found, required by "libflash
-player.so"] 
-
-which, apparently, can be ignored - as it still worked.
-
-## Audio/Video sync issues with this method
-
-Untested - the following was mentioned by ahornung@ on the docs@ list 
-9/30/2010:
-
-    About this: with the libflashsupport out of pkgsrc there's an
-    audio<->video sync problem. Johannes Hofmann (jh33) has found and fixed
-    the issue, but since libflashsupport is distributed as a binary, it
-    didn't make its way into pkgsrc and might never do so.
-
-    He is providing a fixed version (yes, it's a trustworthy source) here:
-
-    http://flpsed.org/libflashsupport.so.gz
-    and here, I think:
-    http://leaf.dragonflybsd.org/~hofmann/libflashsupport.so
+* Compile and install a web browser, as root:
+     
+    cd /usr/pkgsrc/www/seamonkey
+bmake install
+ Alternatively you can search an already compiled version for DragonFlyBSD and install it with pkg_add(1)
+     Just one hint: If you are going to compile your browser, please, use some safe CFLAGS. If something unexpected occurs after/during the build you probably will have to recompile it from zero, truste me. ;-)  $ seamonkey # Execute the newly installed browser as normal user, just to check if it works as expected.
+    
+* Now let's build and install the plugin-wrapper:
+    ******'NOTE: Nowadays nspluginwrapper builds without any problems. A simple 'bmake install' should be enough to install it.******'
+         
+    cd /usr/pkgsrc/www/nspluginwrapper
+bmake extract patch
 
-## Further testing for nspluginwrapper, trying other versions, etc
+* By default, nspluginwrapper fails to build properly under DragonFly, so we will have to make some small adjustments, under the package workdir (work/nspluginwrapper-0.9.91.3) edit the  **configure**  file with your preferred editor, and change:
+     
+    host_os=`uname -s | tr '[A-Z]' '[a-z]'`
+    to:
+host_os='netbsd'
+ . Altough for the reader this may seem strange the only two accepted options available for us are freebsd and netbsd, so, unless you're willing to edit the whole configure and Makefile... :)
 
-If you want to try out another flash version, etc - or possibly
-for other linux-only plugins - the following steps apply and 
-were previously tested using flash7 and the seamonkey browser.
+* Now, with your preferred editor, edit the  **Makefile**  and change:
+     
+    All occurrence of  **-lpthread**  to -pthread
+     Example:  npwrapper_LDFLAGS = $(X_LDFLAGS) -lpthread
+    change to:
+     npwrapper_LDFLAGS = $(X_LDFLAGS) -pthread
+and so on...
+ . And you're done! Now type bmake install under the ***nspluginwrapper*** port. :)
+
+* Now, you will need the libflashsupport port installed, as it will download every linux dependency needed to make flash work properly. As root:
+     
+    cd /usr/pkgsrc/multimedia/libflashsupport
+bmake install
+ . You shouldn't install the ns-flash port, under multimedia, as it will download the Flash 9 which, at least under SeaMonkey, didn't worked properly. However if you're going to use Firefox, it'd pretty nice to give it a try.
 
-* download the Flash 7 plugin from:
+* As an alternative, download the Flash 7 plugin from:
  http://fpdownload.macromedia.com/get/flashplayer/installers/archive/fp7_archive.zip and unzip it.
  r73/install_flash_player_7_linux_r73.tar.gz is reported to work.
-* Extract it somewhere of your choice and run,  **as normal user** :
+ Extract it somewhere of your choice and run,  **as normal user** :
      
     nspluginwrapper -i /path/to/your/flash7/libflashplayer.so
 seamonkey
-
-Remember that you need to create ~/.mozilla/plugins first as 
-nspluginwrapper won't do this for you. It will just silent fail.
-
-Now enjoy! :)
+ Remember that you need to create ~/.mozilla/plugins first as nspluginwrapper won't do this for you. It will just silent fail.
+ . Now enjoy! :)
index d8d5232..3ac34c5 100644 (file)
@@ -3,17 +3,26 @@
 
 The DragonFly 2.8 release is here!
 
+## Big-ticket items
+
+**Crypto support** - dm-crypt was ported to DragonFly.  This means that it is now possible to encrypt DragonFly partitions (e.g., HAMMER and UFS). While it is possible to only encrypt certain partition like `/home/`, it is also possible to encrypt the whole root file system. The latter is especially useful for mobile devices. Further, some parts of the code are SMP aware, so expect a speedup if using multi core machines.
+
+**Packet Filter (pf)** - Pf was updated to a version based upon OpenBSD 4.2. The previous version of pf in DragonFly was based on OpenBSD 3.5. This, in addition to laying the ground for further following OpenBSD's implementation, introduced several performance gains: Information like route-to, altq, tags, etc are now stored in the `mbuf` header directly. This was partially already the case up to DragonFly 2.6, but now the implementation corresponds to OpenBSD's. Furthermore an often unnecessary checksumming was removed, which gains another 10% performance.  Also state tables and interface bound states were reimplemented and the pf_test_*() functions where fold into pf_test_rule() to make  things clearer. DragonFly-specific additions, support for fairq packet queueing and pickups, have remained intact.
+
+**WiFi Stack Update** - FreeBSD's WiFi (802.11) network stack has been ported by Rui Paulo.  While not all WiFi drivers have been ported the ability to port drivers from FreeBSD much more easily will allow us to ultimately add support for more and newer WiFi devices in the near future.
+
+**MP Performance** - The multiprocessor work that has been ongoing in DragonFly is beginning to bear fruit. The MPLOCK (The Giant or primary lock, that when held ensures only a single cpu is operating within the kernel) has been pushed back significantly with this release. Performance has been improved for many workloads.
+
+## Availability
+
 Three release options are now available for 32-bit as well as for 64-bit:  
 
 * Our bare-bones CD ISO,
 * a bare-bones bootable USB disk-key image (minimum 1G USB stick needed),
 * and a GUI bootable USB disk-key image with a full X environment.
 
-## Availability
-
 The release ISO images should be available on most of the [[mirrors|mirrors]]. If the ISO is not available on a certain mirror, please try another one or download it from the DragonFly FTP server.
 
-
 ### MD5 sums
 
 * MD5 (dfly-i386-2.8.1_REL.img.bz2) = 66d38f9329573cb23b0577ba652703b7
@@ -23,18 +32,17 @@ The release ISO images should be available on most of the [[mirrors|mirrors]]. I
 
 ### pkgsrc packages
 
-We offer thousands of pre-built [pkgsrc](http://www.pkgsrc.org) packages for this release. The [pkg_radd(1)](http://leaf.dragonflybsd.org/cgi/web-man?command=pkg_radd&section=ANY) utility may be used to download pre-built binary packages.  The path can be overridden by setting BINPKG_SITES in `/etc/settings.conf`.
+We offer thousands of pre-built [pkgsrc](http://www.pkgsrc.org) packages for this release. The [pkg_radd(1)](http://leaf.dragonflybsd.org/cgi/web-man?command=pkg_radd&section=ANY) utility may be used to download pre-built binary packages.  The path can be overridden by setting BINPKG_BASE in `/etc/settings.conf`.
 
 To get a list of all packages, let [pkg_search(1)](http://leaf.dragonflybsd.org/cgi/web-man?command=pkg_search&section=ANY) download the summary file for that release:
 
     # pkg_search -d
 
-We supply a Makefile in /usr to track the pkgsrc tree and we supply a Git mirror of the NetBSD pkgsrc CVS repo at `git://git.dragonflybsd.org/pkgsrcv2.git`.  We recommend that
-users use it, instead of pulling from NetBSD with CVS.  Our Git mirror is updated several times a day.
+We supply a Makefile in `/usr` to track the pkgsrc tree and we supply a Git mirror of the NetBSD pkgsrc CVS repo at `git://git.dragonflybsd.org/pkgsrcv2.git`.  We recommend that users use it, instead of pulling from NetBSD with CVS.  Our Git mirror is updated several times a day.
 
-## DragonFly 2.6.x Special Installation and Upgrade Notes
+## DragonFly 2.8.x Special Installation and Upgrade Notes
 
-**New Loader** - The forth loader is no longer in the system. The new loader, 'dloader', has to be installed before an 'installkernel'. If you are updating from an older system such as DragonFly 2.4 it is recommended to run an installworld before the installkernel to update the loader. Otherwise you can simply do the following before the 'installkernel'.
+**New Loader** - The forth loader is no longer in the system. The new loader, 'dloader', has to be installed before an 'installkernel'. If you are updating from an older system such as DragonFly 2.6 it is recommended to run an installworld before the installkernel to update the loader. Otherwise you can simply do the following before the 'installkernel'.
 
 >     # cd /usr/src/sys/boot
 >     # make all install
@@ -42,7 +50,7 @@ users use it, instead of pulling from NetBSD with CVS.  Our Git mirror is update
 
 **BIND removal** - BIND is no longer in the base system.  If you are using BIND or any of the associated utilities (host, nslookup, etc.), this method will allow you to transition to the version in pkgsrc:
 
->     # cd /usr/pksrc/net/bind96
+>     # cd /usr/pksrc/net/bind96
 >     # bmake all install clean
 
 or
@@ -188,12 +196,3 @@ Test your setup with `host`, `dig` and so on. Check for a running `named` proces
 * A security issue in libopie was fixed.
 * A security issue in the libc globbing code was fixed.
 
->### Big-ticket items
-
-**Crypto support** - dm-crypt was ported to DragonFly.  This means that it is now possible to encrypt DragonFly partitions (e.g., HAMMER and UFS). While it is possible to only encrypt certain partition like `/home/`, it is also possible to encrypt the whole root file system. The latter is especially useful for mobile devices. Further, some parts of the code are SMP aware, so expect a speedup if using multi core machines.
-
-**Packet Filter (pf)** - Pf was updated to a version based upon OpenBSD 4.2. The previous version of pf in DragonFly was based on OpenBSD 3.5. This, in addition to laying the ground for further following OpenBSD's implementation, introduced several performance gains: Information like route-to, altq, tags, etc are now stored in the `mbuf` header directly. This was partially already the case up to DragonFly 2.6, but now the implementation corresponds to OpenBSD's. Furthermore an often unnecessary checksumming was removed, which gains another 10% performance.  Also state tables and interface bound states were reimplemented and the pf_test_*() functions where fold into pf_test_rule() to make  things clearer. DragonFly-specific additions, support for fairq packet queueing and pickups, have remained intact.
-
-**WiFi Stack Update** - FreeBSD's WiFi (802.11) network stack has been ported by Rui Paulo.  While not all WiFi drivers have been ported the ability to port drivers from FreeBSD much more easily will allow us to ultimately add support for more and newer WiFi devices in the near future.
-
-**MP Performance** - The multiprocessor work that has been ongoing in DragonFly is beginning to bear fruit. The MPLOCK (The Giant or primary lock, that when held ensures only a single cpu is operating within the kernel) has been pushed back significantly with this release. Performance has been improved for many workloads.