This file is indexed.

/usr/share/doc/gnat-gps/html/Disabling-Project-Edition-Features.html is in gnat-gps-doc 5.0-6.

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
<html lang="en">
<head>
<title>Disabling Project Edition Features - Using the GNAT Programming Studio</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Using the GNAT Programming Studio">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Project-Handling.html#Project-Handling" title="Project Handling">
<link rel="prev" href="Project-View.html#Project-View" title="Project View">
<link rel="next" href="The-Project-Menu.html#The-Project-Menu" title="The Project Menu">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 2002-2010 AdaCore.

This document is free; 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 of the License, or
(at your option) any later version.

This document 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 this program; if not, see `http://www.gnu.org/licenses/'.-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
pre.smallexample {background-color:rgb(240,240,240);
                     font-family: courier new,courier,fixed;
                     font-size: 14px;
                     margin: 0px 40px 0px 40px;
                     border-width: 1px 2px 2px 1px;
                     border-top-style: dotted;
                     border-left-style: dotted;
                     border-right-style: solid;
                     border-bottom-style: solid;
                     border-color: black;}
   code             {color:black;
                     font-family: courier new,courier,fixed;
                     font-size: 14px;}
   body             {font-family: arial,helvetica,sans-serif;
                     font-size: 16px;
                     max-width: 800px;
                     text-align: justify}
   samp             {font-family: courier new,courier,fixed;
                     font-size: 14px}
                    
--></style>
</head>
<body>
<div class="node">
<a name="Disabling-Project-Edition-Features"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="The-Project-Menu.html#The-Project-Menu">The Project Menu</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Project-View.html#Project-View">Project View</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Project-Handling.html#Project-Handling">Project Handling</a>
<hr>
</div>

<h3 class="section">7.6 Disabling Project Edition Features</h3>

<p><a name="index-project-editing-362"></a><!--  -->

<p class="noindent">The project files should generally be considered as part of the sources,
and thus be put under control of a version control system. As such, you
might want to prevent accidental editing of the project files, either
by you or some other person using the same GPS installation.

   <p>The main thing to do to prevent such accidental edition is to change
the write permissions on the project files themselves. On Unix systems,
you could also change the owner of the file. When GPS cannot write a
project file, it will report an error to the user.

   <p>However, the above doesn't prevent a user from trying to do some
modifications at the GUI level, since the error message only occurs when
trying to save the project (this is by design, so that temporary modification
can be done in memory).

   <p>You can disable all the project editing related menus in GPS by adding
special startup switches. The recommended way is to create a small batch
script that spawns GPS with these switches. You should use the following
command line:

<pre class="smallexample">        gps --traceoff=MODULE.PROJECT_VIEWER --traceoff=MODULE.PROJECT_PROPERTIES
</pre>
   <p>What these do it prevent the loading of the two GPS modules that are
responsible for project edition. However, this also has an impact on the
python functions that are exported by GPS, and thus could break some
plug-ins. Another solution which might apply in your case is simply to
hide the corresponding project-editing menus and contextual menus. This
could be done by creating a small python plugin for GPS
(see <a href="Customizing-through-XML-and-Python-files.html#Customizing-through-XML-and-Python-files">Customizing through XML and Python files</a>, which contains the
following code:

<pre class="smallexample">     import GPS
     GPS.Menu.get  ("/Project/Edit Project Properties").hide()
     GPS.Contextual ('Edit project properties').hide()
     GPS.Contextual ('Save project').hide()
     GPS.Contextual ('Add configuration variable').hide()
</pre>
   <!--  -->
   </body></html>