Product SiteDocumentation Site

3.4.2. Автоматическая настройка

Hasher может автоматически добавлять правильное именование разработчика в систему. Для этого необходимо добавить соответствующее описание в специальный конфигурационный файл ~/.hasher/config:
@user: .hasher/config
packager="UsamG1t <usamg1t@altlinux.org>"
@user
[user@VM ~]$ hsh --init
<...>
[user@VM ~]$ hsh-shell
[builder@localhost .in]$ cd
[builder@localhost ~]$ cat .rpmmacros
%_tmppath /usr/src/tmp
%_topdir /usr/src/RPM
%packager UsamG1t <usamg1t@altlinux.org>
%buildhost user.hasher.altlinux.org
%__BTE hasher
%__nprocs 2
%_pkg_contents_index_bin /.host/contents_index_bin
%_rpmbuild_clean 0
%_rpmbuild_packagesource 1
[builder@localhost ~]$
Для заполнения %changelog теперь можно будет воспользоваться специальными плагинами автодобавления сообщений (например, помощью vim-плагина).
При создании окружения вокруг пакета sysiphus_check теперь не выдаст ошибки. Сборка без ключей создаст окружение, соберёт пакет, и, в случае успеха, автоматически очистит окружение. Для последующей разработки или устранения неполадок сборки необходимо использовать ключ --lazy.
Настройка окружения вокруг некоторого пакета открывает дополнительную возможность hasher — развёртывание собственного локального репозитория пакетов на устройстве. Доступ к репозиторию, в котором хранятся как пакеты с исходным кодом, так и двоичные пакеты, осуществляется с @user через директорию hasher/repo/:
@user
[user@VM ~]$ tree hasher/repo/
hasher/repo/
├── SRPMS.hasher
│   ├── not-null-pkg-1.0-alt1.src.rpm
│   └── null-pkg-1.0-alt1.src.rpm
└── x86_64
   └── RPMS.hasher
       ├── not-null-pkg-1.0-alt1.x86_64.rpm
       └── null-pkg-1.0-alt1.x86_64.rpm

4 directories, 4 files
[user@VM ~]$
[user@VM ~]$ cp hasher/chroot/usr/src/RPM/SRPMS/pkg-ncurses-1.0-alt1.src.rpm 
[user@VM ~]$ hsh pkg-ncurses-1.0-alt1.src.rpm
<...>
[user@VM ~]$ tree hasher/repo/
hasher/repo/
├── SRPMS.hasher
│   ├── not-null-pkg-1.0-alt1.src.rpm
│   ├── null-pkg-1.0-alt1.src.rpm
│   └── pkg-ncurses-1.0-alt1.src.rpm
└── x86_64
   └── RPMS.hasher
       ├── not-null-pkg-1.0-alt1.x86_64.rpm
       ├── null-pkg-1.0-alt1.x86_64.rpm
       ├── pkg-ncurses-1.0-alt1.x86_64.rpm
       └── pkg-ncurses-debuginfo-1.0-alt1.x86_64.rpm
4 directories, 7 files
[user@VM ~]$