일반적으로 가능하면 새로운 패키지를 설치 하는 경우 공식 리포지토리 아니면 AUR 리포지토리를 통해 설치하는게 좋습니다. 그러나 간혹 불가능하거나 리포지토리를 제공하지 않는 경우가 있습니다. 다음은 Arch(Manjaro)에 .deb 패키지를 설치하기 위한 과정 입니다.

설치 과정

.deb 패키지를 설치하기 위해서 debtap을 사용하는데 이를 설치 하려면 yay가 필요 합니다.

yay -S debtap

debtap을 사용하기 전에 패키지 데이터베이스를 한 번 이상 빌드하도록 해야 하므로 다음 명령어를 한번 실행 합니다.

sudo debtap -u

$> sudo debtap -u
==> Synchronizing pkgfile database...
:: Updating 4 repos...
  community is up to date
  multilib is up to date
  extra is up to date
  core is up to date
==> Synchronizing debtap database...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 12.5M  100 12.5M    0     0  5888k      0  0:00:02  0:00:02 --:--:-- 5886k
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   98k  100   98k    0     0   198k      0 --:--:-- --:--:-- --:--:--  199k
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  180k  100  180k    0     0   300k      0 --:--:-- --:--:-- --:--:--  300k
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 47.8M  100 47.8M    0     0  8289k      0  0:00:05  0:00:05 --:--:-- 10.7M
==> Downloading latest virtual packages list...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 14118    0 14118    0     0  25403      0 --:--:-- --:--:-- --:--:-- 25403
==> Downloading latest AUR packages list...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  426k  100  426k    0     0   148k      0  0:00:02  0:00:02 --:--:--  148k
==> Generating base group packages list...
==> All steps successfully completed!

이제 .deb 패키지를 Arch 패키지로 변환합니다.

debtap xxx.deb

$> debtap xxx.deb
==> Extracting package data...
==> Fixing possible directories structure differencies...
==> Generating .PKGINFO file...

:: Enter Packager name (can be left blank):

:: Enter package license (can be left blank, you can enter multiple licenses comma separated):


*** Creation of .PKGINFO file in progress. It may take a few minutes, please wait...

==> Checking and generating .INSTALL file (if necessary)...

:: If you want to edit .PKGINFO file, press (1) For vi (2) For nano (3) For default editor (4) For a custom editor or any other key to continue:


==> Generating .MTREE file...

==> Creating final package...
==> Package successfully created!
==> Removing leftover files...

명령어를 실행하면 xxx.pkg.tar.zst 와 같은 Arch 패키지가 생성 됩니다. 이제 패키지 관리자 pacman 를 사용하여 패키지를 설치합니다.

sudo pacman -U xxx.pkg.tar.zst

$> sudo pacman -U xxx.pkg.tar.zst
loading packages...
warning: xxx-0.8-1 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...

Packages (1) xxx-0.8-1


:: Proceed with installation? [Y/n] Y
(1/1) checking keys in keyring                                                                 [########################################################] 100%
(1/1) checking package integrity                                                               [########################################################] 100%
(1/1) loading package files                                                                    [########################################################] 100%
(1/1) checking for file conflicts                                                              [########################################################] 100%
(1/1) checking available disk space                                                            [########################################################] 100%
:: Processing package changes...
(1/1) reinstalling xxx                                                                         [########################################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...

참고 링크