Commit graph

41 commits

Author SHA1 Message Date
Dewey Garrett
14e669e395 linuxcnc.in: export LINUXCNC_NCFILES_DIR
also for rip-environment.in

Provide an environmental variable for guis so that expected
gcode libraries can be found without in-gui methods.

Note, the naming legacy is very different for RIP and DEB

DEB: /usr/share/linuxcnc/ncfiles/
RIP          the_git_top/nc_files/
                         ^^^^^^^^

Signed-off-by: Dewey Garrett <dgarrett@panix.com>
2015-11-02 13:19:20 -07:00
Dewey Garrett
6362061e63 linuxcnc.in: support absolute path for halfiles
for consistency with proc used for emccalib.tcl et al:
  lib/hallib/hal_procs_lib.tcl:find_file_in_path

minor: improve format of "Found file" prints
Signed-off-by: Dewey Garrett <dgarrett@panix.com>
2015-08-01 11:29:58 -07:00
Dewey Garrett
b1c6283951 linuxcnc.in: prevent uneeded msg in linuxcnc.debug
for [APPLICATIONS]DELAY when [APPLICATIONS] inifile stanza is not used

thanks to mozmck for report
Signed-off-by: Dewey Garrett <dgarrett@panix.com>
2015-03-31 15:41:03 -07:00
Dewey Garrett
68a9942dbf linuxcnc.in: defer starting [APPLICATIONS]APPs
until hal is started.
And make default [APPLICATIONS]DELAY=0

Most existing [APPLICATION]APP= examples only need a delay for
creation of hal pins -- this commit elimates need for a delay in
these cases.

A delay _is_ needed when an [APPLICATION]APP= depends
on [HAL]POSTGUI_HALFILE connections or other gui preliminaries
such as the pins created by the touchy gui.

Signed-off-by: Dewey Garrett <dgarrett@panix.com>
2015-02-02 13:24:51 -07:00
Dewey Garrett
a39b7054e7 linuxcnc.in,haltcl.in pass args to haltcl file
linuxcnc.in: a haltcl file can make use of args

haltcl.in: set argv [lindex $argv 1 end] was always wrong,
           lrange was intent

Signed-off-by: Dewey Garrett <dgarrett@panix.com>
2014-12-21 12:49:37 -07:00
Dewey Garrett
8b44ccfa6a hallib: support for system-wide halfiles
1) HALLIB_DIR: new directory for system-wide hal files (*.hal,*.tcl and
   supporting files).
   Locations:
             RIP: HALLIB = lib/hallib/
             DEB: HALLIB = /usr/share/linuxcnc/hallib/

2) HALLIB_PATH: search path for locating halfiles:
   HALLIB_PATH = .:HALLIB_DIR (e.g., ini directory then system library)

3) LIB: prefix to explicitly specify a system library halfile (with
   no search of the ini file directory)
   [HAL]
   ...
   HALFILE = LIB:filename.[hal|tcl]
   ...

This patch addresses a general issue of the multiple copies (or links) of
halfiles throughout the config tree and makes it simple to explicitly specify a
library halfile so that a user does not need to copy these files when modifying
a configuration.  For example, one can instruct a user with:
   'Include the line HALFILE = LIB:xhc-hb04.tcl in the [HAL] stanza of
    your ini file'

Signed-off-by: Dewey Garrett <dgarrett@panix.com>
2014-12-16 19:33:51 -07:00
Dewey Garrett
99d4097e84 linuxcnc script: support arguments passed to APP
and improve search method for finding application

update pyngcgui_touchy examples to illustrate arguments

Signed-off-by: Dewey Garrett <dgarrett@panix.com>
2014-10-11 20:25:30 -07:00
Dewey Garrett
ac5ecc570c linuxcnc script: support starting applications
Specify with:
   [APPLICATIONS] DELAY = value_in_seconds
   [APPLICATIONS] APP = application name

Also: Update ini_hal_demo.ini example to simplify and
      illustrate starting of an application

Signed-off-by: Dewey Garrett <dgarrett@panix.com>
2014-10-11 20:21:20 -07:00
Jeff Epler
d131cf1705 runscript: fix regression for ini names that include shell special characters 2014-06-08 16:51:17 -05:00
Chris Radek
2374e3e6e4 More removal of noise from nonerrors, following todo-2.6 #26 2014-04-24 14:18:22 -05:00
Dewey Garrett
ef7d8bf0d0 configs/apps: new directory and .demo support
A new file type (.demo) in the configs tree is supported by the linuxcnc
script and the configuration selector (pickconfig.tcl).  A .demo file
must be executable and is typically implemented as a shell script that
invokes an application with appropriate parameters.

This facility makes it possible to demonstrate apps related to linuxcnc
using pickconfig without starting linuxcnc or requiring a complete ini
file.

Thanks to Chris Morley for suggestion

Details:
    Modify pickconfig to support .demo files
       Use noforcecopy for .demo files which should not be copied to
       a user dir
    Provide .demo apps for halrun,info,parport,xhc-hb04
    Provide .demo apps for gladevcp,pyvcp
    New script: linuxcnc_var and removal of several scripts/*.in.
    Rename latency scripts for consistency (and reduce merge overwrites).
    Remove latencyplot from menu.
    Moved gladevcp demo apps from root/gladevcp to configs/apps/gladevcp
       The root/gladevcp/ examples were orphans and didn't work with
          the configuration selector
       Change .py files so persistent files are named .save instead of
          .ini to avoid conflict with .ini files which the configuration
          selector presumes are working configs.
       Rebranding in some py files
       Some clarifications within copied README files
       Consolidate by-widgets dir
    Update docs
       New doc for configuration selector (needs formatting)
       Update for configs tree rearrangement
    Rename 2 non working sim .ini files to .ini.notworking
2014-03-22 06:13:56 -07:00
Chris Radek
a89b4e93f7 Fix including files with spaces in their names 2014-03-07 11:25:48 -06:00
Chris Radek
bcc1be2668 Use bash's built-in expansion
This will now expand ~user/ correctly when user's home directory isn't
/home/user, and also allows other kinds of shell expansion; for instance you
can include from a path that uses ${LINUXCNCVERSION}
2014-03-07 11:24:24 -06:00
Dewey Garrett
c4a982ade0 linuxcnc.in: annotate autogenerated file
when created for expanded #INCLUDE directives
2014-03-06 15:04:56 -07:00
Dewey Garrett
19d868483d linuxcnc.in: cd to ini dir in handle_includes()
minor: updates to example ini file
minor: try to fix bullets in doc txt file
2014-03-06 15:04:56 -07:00
Dewey Garrett
352b7a684c linuxcnc.in: support ini with includes directives
Format: #INCLUDE filename

sim demo at: configs/sim/axis/ini_with_includes
2014-03-06 15:04:55 -07:00
Jeff Epler
5a9621588d runscript: fix typo in earlier commit 2013-11-06 09:01:47 -06:00
Jeff Epler
6e92d3ae7d runscript: don't print errors when everything is OK 2013-11-06 07:38:16 -06:00
Sebastian Kuzminsky
bc50c09683 Merge branch 'v2.5_branch' 2013-06-21 17:33:45 -05:00
Jeff Epler
d977325c15 make loadusr search the bin/ subdir of the configuration 2013-06-21 16:21:02 -05:00
Chris Radek
a73b79df25 linuxcnc script: add -r for runtests
This tells the script to not mess with stdout and stderr.  This is
important for runtests that use a custom "ui" to exercise something.
2013-06-19 07:57:02 -06:00
Sebastian Kuzminsky
ef77b2e0d0 Revert "redis/linuxcnc startup: automatically start & stop redis-server"
This reverts commit ff1025f7be.
2013-03-07 16:53:44 -07:00
Chris Morley
667da788d6 Merge branch 'master' into gscreen_master
Conflicts:
	src/emc/usr_intf/gremlin/gremlin.py
2012-09-09 12:50:19 -07:00
Michael Haberler
ff1025f7be redis/linuxcnc startup: automatically start & stop redis-server
optional ini configurations options are:
    [REDIS]
    SERVER_PATH=redis-server
    SERVER_LOG=/tmp/redis.log
    SERVER_ARGS=
    #DISABLE_SERVER=1

by default, start as 'redis-server >/dev/null'
2012-09-04 21:30:17 +02:00
Chris Morley
851423c952 linuxcnc script -add CONFIG_DIR to exported variables
this exports the path to the configuration folder that is loading
2012-08-05 11:52:29 -07:00
Michael Haberler
d21a488a9e configure: test for libgl1-mesa-dri bug and workaround
see https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/259219
2012-03-28 11:20:15 +02:00
Jeff Epler
10d8caf753 Merge remote-tracking branch 'origin/v2.5_branch'
Conflicts:
	lib/python/rs274/glcanon.py
	src/po/fr.po
2012-03-16 19:55:22 -05:00
Jeff Epler
c3b2b0de14 runscript: branding 2012-03-14 20:31:51 -05:00
Jeff Epler
38e13790b2 runscript: these are paths, so tilde-expand them 2012-02-06 08:08:51 -06:00
Dewey Garrett
aa36da227e haltcl: allow use of -i or -ini to be more like halcmd 2012-02-01 21:09:03 -06:00
Sebastian Kuzminsky
b9baa4d105 Merge remote branch 'origin/v2.5_branch'
Conflicts:
	docs/src/gcode/overview.txt
	scripts/linuxcnc.in
2012-01-21 12:40:55 -07:00
Jeff Epler
e153441b22 refer to LINUXCNC_CONFIG_PATH 2012-01-21 10:13:37 -06:00
Jeff Epler
94e012aa28 more 'linuxcnc' in the runscript 2012-01-21 10:13:37 -06:00
Jeff Epler
b400f53a86 refer to linuxcncrsh 2012-01-21 10:13:36 -06:00
Jeff Epler
57483e9083 refer to linuxcnctop 2012-01-21 10:13:36 -06:00
Jeff Epler
d87c48054f runscript: compatiblity for legacy [DISPLAY]DISPLAY values 2012-01-19 09:23:18 -06:00
Jeff Epler
013b2f9b68 runscript: new names for inifile items, with backwards compatibility
Now [MOT]MOT will be searched first, then [EMCMOT]EMCMOT.  The same
for [IO].

This is only a partial solution, as C(++) coded parts are still aware
only of the old (section) names
2012-01-19 09:23:18 -06:00
Jeff Epler
5d7e3deaa8 runscript: add a more flexible get-from-ini routine 2012-01-19 09:23:17 -06:00
Jeff Epler
65cf9ebed4 Merge remote-tracking branch 'origin/v2.5_branch'
Conflicts:
	docs/man/man9/motion.9
	docs/src/Submakefile
	docs/src/gcode/overview.txt
	scripts/linuxcnc.in
	src/Makefile
	src/emc/rs274ngc/Submakefile
	src/emc/task/Submakefile
	src/emc/usr_intf/emcsh.cc
2012-01-18 17:06:00 -06:00
Dewey Garrett
267f506872 linuxcnc.in minor rebranding fix 2012-01-18 14:57:40 -06:00
Jeff Epler
51fc09fd2d Rename many user visible parts to "linuxcnc"
this includes the main script, some of the GUIs, the Python module,
the Tcl package, some image fies.

On a sim system, axis, tkemc, xemc all start.  runtests pass.

a system with realtime wasn't yet tested.

packaging probably requires additional changes and was not yet tested.
2012-01-18 11:25:09 -06:00
Renamed from scripts/emc.in (Browse further)