Difference between revisions of "Package dependencies:Spanish"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
 
Line 61: Line 61:
 
De hecho, sería exactamente igual si "other-package" tuviera una dependencia sobre este paquete "example-package". Pero con algunos paquetes puede ser más lógico y más práctico, el encadenamiento de otro paquete, en lugar de hacer depender al resto de este paquete en concreto.
 
De hecho, sería exactamente igual si "other-package" tuviera una dependencia sobre este paquete "example-package". Pero con algunos paquetes puede ser más lógico y más práctico, el encadenamiento de otro paquete, en lugar de hacer depender al resto de este paquete en concreto.
  
Por ejemplo si utiliza un paquete "Gimp" para la aplicación "The Gimp" y un paquete "GimpHelp" guardando los ficheros de ayuda del programa; y desea que los ficheros se ayuda ("GimpHelp") se instalen siempre con "Gimp". El paquete "GimpHelp" depende del paquete "Gimp" tanto, como ''Gimp'' necesita sus ficheros de ayuda. Como estos ficheros de ayuda pueden instalarse antes que el propio ''Gimp'', habría que utilizar 'depends' en el paquete "GimpHelp". Pero en este caso, lo más lógico es encadenar ('chain') "GimpHelp" a "Gimp".
+
Por ejemplo si utiliza un paquete "Gimp" para la aplicación "The Gimp" y un paquete "GimpHelp" guardando los ficheros de ayuda del programa; y desea que los ficheros se ayuda ("GimpHelp") se instalen siempre con "Gimp". El paquete "GimpHelp" depende del paquete "Gimp" casi tanto, como ''Gimp'' necesita sus ficheros de ayuda. Como los ficheros de ayuda necesitan obligatoriamente ''Gimp'', habría que utilizar 'depends' en el paquete "GimpHelp". Pero en este caso, lo más lógico es encadenar ('chain') "GimpHelp" a "Gimp" como se aclara en el siguiente párrafo.
  
In general the best practice is that if some main package needs certain other packages (containing components, libraries, frameworks, ...) to be able to work, that main package should depend on the needed other packages.
+
En general se considera mejor utilización, si algunos paquetes necesitan a otros (con sus componentes, librerías, frameworks, ...) para poder trabajar, que el paquete principal dependa (o necesite) a estos otros paquetes. Pero si (quizá por políticas de seguridad de las empresas) el paquete principal puede a veces  ser completado con otros paquetes como ficheros de ayuda, imágenes, entonces, debería encadenarse al paquete principal estos complementos. De esta forma, si no se requieren estas extensiones siempre (por ejemplo, las extensiones de desarrollador para Firefox), no es conveniente encadenarlas al paquete principal, pero hay que hacerlas depender a los paquetes, asignándolas individualmente a los ''profiles'' cuando sea necesario.
But if (maybe due to a company policy) the main package always needs to be extended with certain packages (help-files, clipart, ...), then you should chain the extending packages from the main package. Be ware that if you don't want certain application extensions to be installed always (for example firefox developer extensions), you should not chain them from the main package, but let them depend on the main package and then assign them individually to the profiles where needed.
+
  
== Including a package ==
+
== Incluir un paquete ==
By using '''include''' you ''include'' a package to the list of packages as specified by the profile, meaning that if you install this package the included package will also be installed. This included package will be installed based on its priority.
+
Utilizando la cláusula '''include''' se pueden ''incluir'' un paquete o una lista de paquetes como si fueran solicitadas en el propio perfil (profile), esto significa que si se instala este paquete, los paquetes incluidos también serán instalados. Esta inclusión será instalada basándose en su propia prioridad.
So if the included package has high priority it will be installed early during synchronization. If the included package has low priority it will be installed late. If you would like to enforce a certain installation order please consider to specify a dependency (see [[Depending on a package]]) !
+
  
The example used in [[Packages.xml]] has been modified to make it include another package called "other-package":
+
Por eso si el paquete incluído tiene priridad más alta, será instalado antes durante el proceso de sincronización. Si el paquete incluído tiene una baja prioridad, será instalado más tarde. Si busca asegurar un cierto orden de instalaciones de paquetes, debería considerar utilizar las cláusulas de dependencia (vea [[Dependiendo de un paquete]]) !
 +
 
 +
El ejemplo utilizado en [[Packages.xml]] se ha modificado para que incluya otro paquete denominado "other-package":
 
<source lang="xml">
 
<source lang="xml">
 
<packages>
 
<packages>
Line 86: Line 86:
 
</source>
 
</source>
  
In this example the 'include' makes the "other-package" also install if the current package "example-package" is installed.  
+
En este ejemplo, al incluir el "other-package", se instalará este último si también se instala "example-package".  
  
 
[[category:Documentation]]
 
[[category:Documentation]]

Latest revision as of 12:46, 18 November 2010

Este documento en otros lenguajes: Inglés


Los paquetes pueden depender unos de otros (p.e., hay que instalar Firefox antes de instalar plugin de Firefox etc.).

Hay tres tipos de dependencias:

depend - hacer depender el paquete actual del otro paquete que se especifica.

chain - encadenar otro paquete a este paquete. Primero el paquete actual y después (encadenado al actual), el especificado en chain.

include - incluir el paquete especificado en el proceso general de WPKG.

Dependiendo de un paquete

Utilizando depend se hace que un paquete dependa de otro, esto significa, que este paquete (el actual), necesita de otro paquete (el especificado en la clausula depend) para su correcto funcionamiento. Esta dependencia pueden ser necesaria durante la instalación o actualización, por lo tanto la dependencia tendrá que ser instalada la antes que el paquete actual, independientemente de la prioridad de ambos paquetes.

El formato es muy simple, y similar al utilizado por profile dependencies

El ejemplo utilizado en Packages.xml se ha modificado en el ejemplo siguiente para hacerlo depender de otro paquete denominado "other-package":

<packages>
<package
 id="example-package"
 name="Example Package"
 revision="1"
 reboot="false"
 priority="0">

 <depends
  package-id="other-package" />

 ...

En este ejemplo, la dependencia (lo indicado en 'depends') hace que el paquete "other-package" se instale antes que el paquete actual denominado "example-package".

Encadenando un paquete

Utilizando la cláusula chain se encadena un paquete al actual, lo que significa que si se instala el paquete actual, el otro paquete indicado en la clausula chain también debe ser instalado después del actual (o a continuación del mismo).

Atención: Un paquete encadenado también puede ser instalado antes que el paquete que lo encadenó. Esto puede ocurrir cuando el paquete encadenado, quedó instalado previamente (posiblemente debido a otra dependencia) o a que tenga mayor prioridad que el paquete encadenador. Si necesitas asegurar que un paquete se instale antes que otro en el primero hay que utilizar la cláusula de dependencia anterior (ver Dependiendo de un paquete)

En el ejemplo utilizado en la página Packages.xml ha sido modificado para encadenarle otro paquete denominado "other-package":

<packages>
<package
 id="example-package"
 name="Example Package"
 revision="1"
 reboot="false"
 priority="0">

 <chain
  package-id="other-package" />

 ...

En este ejemplo el 'encadenamiento' ('chain') hace que el "other-package" se instale justo a continuación del actual paquete "example-package".

De hecho, sería exactamente igual si "other-package" tuviera una dependencia sobre este paquete "example-package". Pero con algunos paquetes puede ser más lógico y más práctico, el encadenamiento de otro paquete, en lugar de hacer depender al resto de este paquete en concreto.

Por ejemplo si utiliza un paquete "Gimp" para la aplicación "The Gimp" y un paquete "GimpHelp" guardando los ficheros de ayuda del programa; y desea que los ficheros se ayuda ("GimpHelp") se instalen siempre con "Gimp". El paquete "GimpHelp" depende del paquete "Gimp" casi tanto, como Gimp necesita sus ficheros de ayuda. Como los ficheros de ayuda necesitan obligatoriamente Gimp, habría que utilizar 'depends' en el paquete "GimpHelp". Pero en este caso, lo más lógico es encadenar ('chain') "GimpHelp" a "Gimp" como se aclara en el siguiente párrafo.

En general se considera mejor utilización, si algunos paquetes necesitan a otros (con sus componentes, librerías, frameworks, ...) para poder trabajar, que el paquete principal dependa (o necesite) a estos otros paquetes. Pero si (quizá por políticas de seguridad de las empresas) el paquete principal puede a veces ser completado con otros paquetes como ficheros de ayuda, imágenes, entonces, debería encadenarse al paquete principal estos complementos. De esta forma, si no se requieren estas extensiones siempre (por ejemplo, las extensiones de desarrollador para Firefox), no es conveniente encadenarlas al paquete principal, pero hay que hacerlas depender a los paquetes, asignándolas individualmente a los profiles cuando sea necesario.

Incluir un paquete

Utilizando la cláusula include se pueden incluir un paquete o una lista de paquetes como si fueran solicitadas en el propio perfil (profile), esto significa que si se instala este paquete, los paquetes incluidos también serán instalados. Esta inclusión será instalada basándose en su propia prioridad.

Por eso si el paquete incluído tiene priridad más alta, será instalado antes durante el proceso de sincronización. Si el paquete incluído tiene una baja prioridad, será instalado más tarde. Si busca asegurar un cierto orden de instalaciones de paquetes, debería considerar utilizar las cláusulas de dependencia (vea Dependiendo de un paquete) !

El ejemplo utilizado en Packages.xml se ha modificado para que incluya otro paquete denominado "other-package":

<packages>
<package
 id="example-package"
 name="Example Package"
 revision="1"
 reboot="false"
 priority="0">

 <include
  package-id="other-package" />

 ...

En este ejemplo, al incluir el "other-package", se instalará este último si también se instala "example-package".