A 'features_preview' branch (based on 2.7) is available for
testing.  This branch incorporates the FernV repo starting at
its commit dfd2btb (marked v2.01).


Adapting 'features' to the LinuxCNC git tree required a number of
modifications to make it possible to use in both a Run-In-Place
build _and_ a deb install.  (The modifications required are not
feasible with links alone).

In the 'features_preview branch, all 'features' support files are located
in share/features/:

  
http://git.linuxcnc.org/gitweb?p=linuxcnc.git;a=tree;f=share/features;h=ba661f3b87a69511b17fb6b83798e0e56826db7d;hb=refs/heads/features_preview

and the features.py script is at lib/python/gladevcp/features.py:

  
http://git.linuxcnc.org/gitweb?p=linuxcnc.git;a=blob;f=lib/python/gladevcp/features.py;h=c447f3aad14efe7fff8e3c05706fe6d8cc757b3f;hb=refs/heads/features_preview


There are sim demo configs available:
    Sample Configurations/sim/axis/features_demo/*.ini
and
    Sample Configurations/sim/gmoccapy/features_demo/*.ini


The strategy used in the 'features_preview' branch for embedded
operation is:

  1) When a configuration using 'features' is started the first time,
     directories and required files from the system location
     (share/features/) are recursively copied to the user's directory
     as specified by the inifile item [DISPLAY]FEATURES_DIR

  2) On subsequent startups, 'features' checks for updated files at the
     system location (share/features/) to see if there are new system files
     available (due to a newly installed LinuxCNC version for instance)
     New system files are copied to the user's directory.  If the user
     has local modifications to files, a dialog allows the user to accept
     or reject new system files.

  3) Support for making changes:

     The user has a local copy of files (subroutines, configuration
     files, etc) and can edit them as required to extend local
     usage or to contribute to ongoing development.

     3a) For a RIP build, a user can copy modified files back to the
         appropriate system location (share/features/), make a commit
         and a patch.

     3b) For a user with a DEB install, locally modified files could be 
         offered to a contributor/maintainer to make a commit and patch 
         as described in 3a)
     
  4) The strategy for standalone operation is:
     4a) If an inifilename is specified on the command line, use the
         user directory specified as usual in the inifile item named:
         [DISPLAY]FEATURES_DIR
     4b) If no inifilename is specified on the command line, use the
         working directory.  A dialog requires user confirmation before
         copying the system directories to this directory.


It is tricky to get everything working for both RIP builds and DEB installs
but the 'features_preview' branch seems to be basically working.

Scratch debs are available from the buildbot as usual:
   http://buildbot.linuxcnc.org/

Notes: Scratch debs are temporary and are deleted a few days.

       Some implementation notes and observations are kept at:
       http://www.panix.com/~dgarrett/stuff/features_preview.txt

-- 
Dewey Garrett


------------------------------------------------------------------------------
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to