Arch Linux手动安装Xterminal工具

我使用Arch Linux除了喜欢它的无视版本滚动更新外,更喜欢其优雅的安装软件包,特别是网上各位佬维护的Aur(Arch用户仓库),通过yay工具直接安装非常的优雅愉快。通过Aur仓库找到了Xterminal的包如下:

yay -S xterminal-bin

提示下图报错,翻了翻Aur下面的讨论说是xterminal官方网站不支持curl下载rpm包。

下载报错

因此打算像Mint安装deb包一样通过手动方式进行下载并安装。循着这个思路,我们先去xterminal官网下载了rpm包,然后通过修改其编译的脚本(替换其下载步骤),手工打包,最后进行安装。

  1. 下载rpm包

    https://cdn-office.xterminal.cn/downloads/XTerminal-2.11.2-linux-x86_64.rpm
    
  2. 克隆AUR上xterminal的项目链接

    git clone https://aur.archlinux.org/xterminal-bin.git
    
  3. 将下载的rpm包与xterminal项目放在一起

    文件存放

  4. 修改PKGBUILD文件

    修改内容如下:

    source_x86_64=("XTerminal-2.9.3-linux-x86_64.rpm")
    

    将这个source_x86_64的名称修改为你下载的rpm包的名字,注意与文件名字一定要一样,否则会提示找不到文件。

    完整的内容如下:

    # Maintainer: zxp19821005 <zxp19821005 at 163 dot com>
    pkgname=xterminal-bin
    _pkgname=XTerminal
    pkgver=2.9.3
    _electronversion=31
    pkgrel=1
    pkgdesc="Not only powerful SSH tools, but also local consoles, and more coming soon.(Prebuilt version.Use system-wide electron)不仅是强大的SSH工具,更提供本地控制台,以及更多即将推出的开发相关功能."
    arch=(
        'aarch64'
        'x86_64'
    )
    url="https://www.xterminal.cn/"
    license=('LicenseRef-custom')
    provides=("${pkgname%-bin}=${pkgver}")
    conflicts=("${pkgname%-bin}")
    depends=(
        "electron${_electronversion}"
        'java-runtime'
    )
    makedepends=(
        'asar'
    )
    source=(
        "LICENSE.html"
        "${pkgname%-bin}.sh"
    )
    source_aarch64=("${pkgname%-bin}-${pkgver}-aarch64.rpm::https://cdn-cn.xterminal.cn/downloads/${_pkgname}-${pkgver}-linux-aarch64.rpm")
    source_x86_64=("XTerminal-2.9.3-linux-x86_64.rpm")
    sha256sums=('8d08a959e0086a206ef3454cc0fc323454c73609cd764f102d8d2d076dafa0af'
                '291f50480f5a61bc9c68db7d44cd0412071128706baa868a9cb854f8779a1980')
    sha256sums_aarch64=('2a989e31d229d40c6959d51161887874106577a3c799acbe7f1e793d2451db4f')
    sha256sums_x86_64=('1af5dade838a5f995a44a1ee805b1bd1d2a79b1fc9def00bc5bc45e20dd843cc')
    prepare() {
        sed -e "
            s/@electronversion@/${_electronversion}/g
            s/@appname@/${pkgname%-bin}/g
            s/@runname@/app.asar/g
            s/@cfgdirname@/${pkgname%-bin}/g
            s/@options@/env ELECTRON_OZONE_PLATFORM_HINT=auto/g
        " -i "${srcdir}/${pkgname%-bin}.sh"
        sed -i "s/\/opt\/${_pkgname}\/${pkgname%-bin}/${pkgname%-bin}/g" "${srcdir}/usr/share/applications/${pkgname%-bin}.desktop"
        asar e "${srcdir}/opt/${_pkgname}/resources/app.asar" "${srcdir}/app.asar.unpacked"
        find "${srcdir}/app.asar.unpacked/dist" -type f -exec sed -i "s/process.resourcesPath/\'\/usr\/lib\/${pkgname%-bin}\'/g" {} \;
        asar p "${srcdir}/app.asar.unpacked" "${srcdir}/app.asar"
    }
    package() {
        install -Dm755 "${srcdir}/${pkgname%-bin}.sh" "${pkgdir}/usr/bin/${pkgname%-bin}"
        install -Dm644 "${srcdir}/app.asar" -t "${pkgdir}/usr/lib/${pkgname%-bin}"
        cp -Pr --no-preserve=ownership "${srcdir}/opt/${_pkgname}/resources/"{app.asar.unpacked,tray} "${pkgdir}/usr/lib/${pkgname%-bin}"
        install -Dm644 "${srcdir}/usr/share/applications/${pkgname%-bin}.desktop" -t "${pkgdir}/usr/share/applications"
        install -Dm644 "${srcdir}/usr/share/icons/hicolor/512x512/apps/${pkgname%-bin}.png" -t "${pkgdir}/usr/share/pixmaps"
        install -Dm644 "${srcdir}/LICENSE.html" -t "${pkgdir}/usr/share/licenses/${pkgname}"
    }
    
  5. 编译成安装包

    makepkg -sf
    

    编译过程如下所示:

    编译过程

    编译成功提示:

    编译成功

  6. 安装生成的软件包

    Arch Linux一般的软件包格式为pkg.tar.zst,可以通过pacman -U来进行安装。

    安装包

    安装命令如下:

    sudo pacman -U xterminal-bin-2.9.3-1-x86_64.pkg.tar.zst
    
  7. 可以快乐的用上xterminal啦

    xterminal,启动 !

    打开软件

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇