Un directorio de aplicaciones es una agrupación de códigos de software , archivos de ayuda y recursos que juntos forman un paquete de software completo pero que se presentan al usuario como un solo objeto.
Actualmente se utilizan en RISC OS y ROX Desktop , y también forman la base del sistema de distribución de aplicaciones Zero Install. Una tecnología similar incluye VMware ThinApp y el concepto de paquetes de aplicaciones NEXTSTEP / GNUstep / Mac OS X. Su herencia reside en el sistema para ejecutar automáticamente el software almacenado en disquetes en los primeros micros de 8 bits de Acorn, como el BBC Micro (el archivo !BOOT ).
Al agrupar varios archivos de esta manera, se pueden reemplazar las herramientas para manipular aplicaciones por herramientas para manipular el sistema de archivos . Las aplicaciones se pueden "instalar" con solo arrastrarlas desde un medio de distribución a un disco duro y "desinstalarlas" eliminando el directorio de la aplicación.
Para facilitar la interacción del usuario con los directorios de aplicaciones, varios archivos tienen un estado especial.
Al iniciar un directorio de aplicación se inicia el archivo incluido AppRun (ROX Desktop) o !Run (RISC OS). En RISC OS, generalmente se trata de un archivo Obey (un script de comandos de RISC OS) que asigna memoria y carga módulos de extensión del sistema operativo y bibliotecas compartidas antes de ejecutar el binario de la aplicación, generalmente llamado !RunImage . En ROX Desktop, no es raro que sea un script de shell que iniciará el binario del sistema correcto si está disponible o compilará un binario adecuado desde la fuente en caso contrario. [ cita requerida ]
Tanto RISC OS como ROX Desktop permiten al usuario ver los archivos de ayuda asociados con un directorio de aplicación sin iniciar la aplicación. RISC OS se basa en un archivo en el directorio llamado !Help que se inicia como si el usuario hiciera doble clic en él cuando se solicita ayuda (y puede tener cualquier formato que el sistema entienda, pero los formatos de texto simple y !Draw son comunes), mientras que ROX Desktop abre el subdirectorio Help de la aplicación .
De manera similar, los íconos personalizados para el Directorio de aplicaciones pueden estar incluidos en él, ya sea .DirIcon (en cualquier formato de imagen compatible) o AppIcon.xpm en el escritorio ROX, o !Sprites y, opcionalmente, !Sprites22 en el sistema operativo RISC. El archivador del sistema operativo RISC carga automáticamente estos archivos de sprites en ausencia de un archivo !Boot ; de lo contrario, se deja que el archivo !Boot cargue los íconos apropiados.
Los directorios de aplicaciones de RISC OS pueden contener un archivo llamado !Boot que es ejecutado por Filer ya sea explícitamente a través del comando FilerBoot o cuando se muestra el paquete por primera vez (a menos que el usuario haya mantenido presionada la tecla Control al abrir esa ventana de Filer , lo que anula el arranque de la aplicación [1] ).
Esto permite que una aplicación realice tareas como registrar tipos de archivos admitidos (definiendo su nombre, configurando alias de comandos para ejecutarlos o imprimirlos y cargando íconos apropiados) o elegir cargar íconos diferentes como ASprites (íconos con un canal alfa para RISC OS Select), 5Sprites (íconos con una apariencia RISC OS 5) o íconos específicos del tema.
Los archivos de arranque son el vector de propagación más popular para los virus RISC OS que existen (como el conocido virus Extend), aunque se los puede derrotar simplemente manteniendo presionada la tecla Control .
La función !Boot no está duplicada por ROX Desktop.
Las primeras máquinas de Acorn permitían "arrancar" un medio (ejecutarlo automáticamente) ejecutando un archivo llamado !BOOT si estaba presente (esta acción, "arrancar un disco", se alternaba con la tecla Shift y, por lo tanto, se la conoció como shift-booting ). Esto se aprovechó en la estructura de disco del sistema operativo RISC al tener un directorio de aplicación en la raíz del disco predeterminado llamado !Boot .
Este directorio de aplicación se ejecuta cuando la máquina arranca (si está configurado de esta manera), lo que hace que se ejecute su archivo !Run (es decir, $.!Boot.!Run en la sintaxis de ruta de acceso de Acorn ). Este archivo hace que se ejecuten varios archivos, se carguen módulos del SO, se carguen iconos estándar y se definan tipos de archivos, y define una serie de variables estándar a través de las cuales se accede a sus diversos subdirectorios. De este modo, se puede evitar toda la secuencia de arranque del SO RISC simplemente manteniendo presionada la tecla Shift.