This file is indexed.

/usr/share/doc/edb/examples/eicsw.edb is in edb 1.31-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
:EDB (single) ;;; -*- emacs-lisp -*-

;; Copyright (C) 2005,2008 Thien-Thi Nguyen
;;
;; This file is part of EDB.
;;
;; EDB is free software; you can redistribute it and/or modify it under
;; the terms of the GNU General Public License as published by the Free
;; Software Foundation; either version 3, or (at your option) any later
;; version.
;;
;; EDB is distributed in the hope that it will be useful, but WITHOUT
;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
;; FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
;; for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with EDB; see the file COPYING.  If not, write to the Free
;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
;; MA 02110-1301, USA.

;; Define some enumerated types

;; "arch"

(edb-define-enumtype 'arch
	'("rs6000"			;IBM
	  "NeXT"			;NeXT
	  "sun3" "sun4"			;Sun
	  "mipsel"			;DECstation 5000
	  "r3000"			;SGI R3000
	  "r4000"			;SGI R4000
	  "mac"				;Macintosh
	  "any"				;any
	  ) nil)

;; "os"

(edb-define-enumtype 'os
	'("AIX3.2"
	  "NeXTOS2.0" "NeXTOS3.0"
	  "SunOS4.0.3" "SunOS4.1.1" "SunOS4.1.2"
	  "Solaris2.0" "Solaris2.1"
	  "Ultrix4.1" "Ultrix4.2"
	  "IRIX4.1" "IRIX4.2"
	  "MacOS6.0.5" "MacOS7.0"
	  "any"				;any
	  ) nil)

;; "short-string": both a one-line-string and a string-or-nil.

(edb-define-displaytype 'short-string 'one-line-string
  :actual->display 'db-string-or-nil->string)

(edb-define-recordfieldtype 'short-string 'one-line-string
  :type           'short-string
  :order-fn       'db-string-or-nil-order-ci
  :sort-fn        'db-string-or-nil-lessp-ci
  :match-function 'db-string-or-nil-match-function)

(require 'edb-t-timedate1)

(edb-define-recordfieldtype 'suredate 'date
  ;; writing: always YYYY-MM-DD
  :actual->stored 'edb-t-timedate1:format-date-iso
  ;; reading: either YYYY-MM-DD or MM/DD/YY
  :stored->actual 'edb-t-timedate1:parse-date-string)

;; Now define the database fields and overriding attributes

:tagged-setup
'(:fields
  (((name	  . short-string)    "NM" "Name of software")
   ((desc	  . string-or-nil)   "SD" "Software description")
   ((version      . short-string)    "VR" "Version of software installed")
   ((arch         . arch)	     "MA" "Machine architecture of installation")
   ((os	          . os)		     "OS" "Operating System")
   ((restric      . string-or-nil)   "OR" "Operational restrictions (if any)")
   ((installdate  . suredate)	     "ID" "Date installed")
   ((installer    . short-string)    "IR" "Who installed it")
   ((installnotes . string-or-nil)   "IN" "Installation Notes")
   ((binpath      . short-string)    "BP" "Path to binaries")
   ((binlist      . string-or-nil)   "BL" "List of binaries (possibly linked)")
   ((libpath      . short-string)    "LP" "Path to libraries")
   ((liblist      . string-or-nil)   "LL" "List of libraries (eg: \"-lX11\")")
   ((manpath      . short-string)    "MP" "Path to \"man\" pages")
   ((infopath     . short-string)    "IP" "Path to GNU info file")
   ((helppath     . short-string)    "HP" "Path to file or command to help user with software")
   ((source       . short-string)    "SR" "Source location: FTP site, or local filesystem")
   ((updatedate   . suredate)	     "UD" "Last update date")
   ((updater      . short-string)    "UR" "Who did the last update")
   ((updatenotes  . string-or-nil)   "UN" "Notes on last update"))
  ;; overriding attributes
  :pre-tag-regexp      ""
  :tag-chars           "A-Z"
  :separator-regexp    ":[ \t]*"
  :separator-output    ":\t"
  :continuation-regexp "^[ \t]+"
  :continuation-output "\t")

:name "ECI Software Database"
:summary-format (mapconcat (lambda (pair)
                             (format "\\%s,width=%d" (car pair) (cdr pair)))
                           '((name . 12)
                             (version . 6)
                             ("updatedate,date-mmddyy" . 8)
                             (arch . 10)
                             (os . 10))
                           " ")

:record-defaults
(lambda ()
  "Provide defaults for new records in the database."
  (let ((curdate (edb-t-timedate1:parse-date-string (current-time-string)))
        (curuser (concat (user-login-name) "@" (system-name))))
    (list 'installdate curdate          ; plist
          'installer   curuser
          'updatedate  curdate)))

:display t
         ECI Software Database

         Name: \name
  Description: \desc,indent
      Version: \version
         Arch: \arch
           OS: \os
 Restrictions: \restric,indent
     Bin Path: \binpath
  Binary List: \binlist,indent
 Library Path: \libpath
 Library List: \liblist,indent
     Man Path: \manpath
    Info Path: \infopath
    Help Path: \helppath
       Source: \source

    Installed: \installdate,date-iso
 Installed By: \installer
Install notes: \installnotes,indent

  Last Update: \updatedate,date-iso
   Updated By: \updater
 Update Notes: \updatenotes,indent
:EOTB

;;; eicsw.edb ends here