MochiuWiki : SUSE, EC, PCB
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
検索
個人用ツール
ログイン
Toggle dark mode
名前空間
ページ
議論
表示
閲覧
ソースを閲覧
履歴を表示
インストール - ターミナルのソースを表示
提供: MochiuWiki : SUSE, EC, PCB
←
インストール - ターミナル
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループのいずれかに属する利用者のみが実行できます:
管理者
、new-group。
このページのソースの閲覧やコピーができます。
== 概要 == 全てのLinuxディストリビューションには、何らかのターミナルが既にプレインストールされていることが多い。<br> ターミナルは、コマンドの実行、ファイルの操作、ソフトウェアのインストール、リモート接続等、日常的な管理作業の基盤となる。<br> <br> Linuxでは、デスクトップ環境に標準で付属するターミナルのほか、軽量性、高速描画、拡張性、カスタマイズ性を重視した多様なターミナルを選択することができる。<br> 利用するターミナルにより、設定方法、ショートカットキー、対応する描画方式、設定ファイルの形式が大きく異なる。<br> そのため、用途や作業環境に応じて、適切なターミナルを選択することが重要である。<br> <br> Gnome Terminalのように標準的で扱いやすいターミナルもあれば、STのように最小構成を重視したターミナルも存在する。<br> Kitty、Alacritty、Ghosttyのように、高速描画や近代的な機能を重視したターミナルも広く利用されている。<br> <br> また、Drop Down Terminalのように、デスクトップ環境へ統合して素早く呼び出すことを主目的とした拡張機能も存在する。<br> <br> 近年のターミナルでは、GPU描画、Wayland対応、独自の設定体系、外部ツールとの連携等が導入方法に影響する。<br> <br> また、目的のターミナルが既に利用可能な場合でも、追加設定や外部ツールの導入により、作業効率を大きく改善できることがある。<br> <br><br> == Gnome Terminal == ==== シェルの変更 ==== ===== 方法 1 ===== # Gnome Terminalを右クリックまたは[≡]ボタンを押下して、環境設定を開く。 # 設定プロファイルを開くまたは作成する。 # [Command]タブを選択する。 # [Run a custom command instead of my shell.]チェックボックスにチェックを入力する。 # [Custom command]項目に、Zsh等のシェルの実行ファイルのフルパスを入力する。 <br> ===== 方法 2 ===== 他の方法として、.bashrcファイルの1行目に、以下の設定を追記する。<br> <syntaxhighlight lang="bash"> [ -n "$GNOME_TERMINAL_SCREEN" ] && [ -x "$(command -v zsh)" ] && exec zsh "$@" </syntaxhighlight> <br> 上記の設定の説明を、以下に示す。<br> まず、<code>[ -n "$GNOME_TERMINAL_SCREEN" ]</code>コマンドを実行して、Gnome Terminalを確認する。<br> 次に、<code>[ -x "$(command -v zsh)" ]</code>コマンドを実行して、Zshのパスが存在するかどうかを確認する。<br> 最後に、<code>exec zsh "$@"</code>コマンドを実行して、Bashと同じ引数でZshを起動する。<br> <br> これにより、Gnome Terminalを起動する時、Zsh等のシェルが使用できる。<br> <br> ==== メニューバーの表示 ==== 初期設定では、GNOME Terminalはメニューバーを表示しない。<br> <br> GNOME Terminalの画面を右クリックして、コンテキストメニューから一時的にメニューバーを表示することができる。<br> しかし、次回のGNOME Terminalの起動ではメニューバーが非表示に戻ってしまう。<br> <br> これは、GNOME Terminalにある[編集]メニューバー - [環境設定]で表示される[環境設定]ダイアログボックスに、必要なチェックボックスがないことが原因である。<br> <br> この問題を解決するには、以下に示す2通りの方法がある。<br> * 方法 1 : コマンドから実行する方法 *# ターミナルセッションで次のコマンドを実行する。 *#: <code>gsettings set org.gnome.Terminal.Legacy.Settings headerbar false</code> *# GNOME Shellを再起動することにより、メニューバーを恒久的に追加するだけでなく、欠落していたチェックボックスも追加される。 *# GNOME Terminalの画面を右クリックして、[Preferences] - [General]を選択して、[Show menubar by default in new terminals]チェックボックスにチェックを入力する。 *: <br> * 方法2 : dconfから設定する方法 *# まず、dconf-editorを起動した後、<code>org.gnome.Terminal.Legacy.Settings:headerbar</code>に移動して、値を<code>false</code>に設定する。 *# GNOME Shellを再起動することにより、メニューバーを恒久的に追加するだけでなく、欠落していたチェックボックスも追加される。 *# GNOME Terminalの画面を右クリックして、[Preferences] - [General]を選択して、[Show menubar by default in new terminals]チェックボックスにチェックを入力する。 <br> ==== GNOME Teriminalの初期化 ==== GNOME Terminalの設定を初期化する場合、<code>gsettings</code>コマンドを実行する。<br> <br> GNOME Terminalのプロファイル設定を再帰的にリセットする。<br> フォント、色、スクロール動作等のプロファイル関連の設定がデフォルト値に戻る。<br> gsettings reset-recursively org.gnome.Terminal.ProfilesList <br> GNOME Terminalのプロファイルリストをリセットする。<br> カスタムで作成したプロファイルがある場合、それらが削除されて、デフォルトのプロファイルのみが残る。<br> gsettings reset-recursively org.gnome.Terminal.Legacy.Profile <br><br> == Drop Down Terminal == [https://github.com/anarchodin/gs-extensions-drop-down-terminal Drop Down Terminal]は、Gnome Shellのデスクトップ環境にインストールできるターミナルの拡張機能である。<br> カスタムスクロールバーの設定、カラースキーム、起動時にカスタムコマンドを起動する機能等、便利な機能が搭載されている。<br> <br> また、カスタマイズ性にも優れており、透明度、アニメーション、スクロールバーの表示、ウィンドウのサイズ、ホットキーボタンをカスタマイズすることができる。<br> <br> さらに、コマンド機能により、ユーザのデフォルトシェルではなく、カスタムのコマンドライン引数を実行することができる。<br> URL : https://extensions.gnome.org/extension/442/drop-down-terminal/<br> <br><br> == ST == STのビルドに必要な依存関係のライブラリをインストールする。<br> # RHEL sudo dnf install xrdb libXft-devel libX11-devel harfbuzz-devel libXext-devel libXrender-devel libXinerama-devel # SUSE sudo zypper install xrdb libXft-devel libX11-devel harfbuzz-devel libXext-devel libXrender-devel libXinerama-devel <br> [https://st.suckless.org STの公式Webサイト]にアクセスして、ソースコードをダウンロードする。<br> ダウンロードしたファイルを解凍する。<br> tar xf st-<バージョン>.tar.gz cd st-<バージョン> <br> または、以下のコマンドを実行して、STのソースコードをダウンロードする。<br> git clone https://github.com/siduck/st.git ST cd ST <br> STをビルドおよびインストールする。<br> make clean install DESTDIR=<STのインストールディレクトリ> <br><br> == Kitty == ==== 実行ファイルをダウンロードする場合 ==== [https://github.com/kovidgoyal/kitty/releases KittyのGithub]にアクセスして、<u>Linux <アーキテクチャ名> binary bundle</u>をダウンロードする。<br> ダウンロードしたファイルを解凍する。<br> tar xf kitty-<バージョン>-<アーキテクチャ名>.txz cd kitty-<バージョン>-<アーキテクチャ名> <br> 解凍したディレクトリを任意のディレクトリに配置する。<br> mv kitty-<バージョン>-<アーキテクチャ名> <Kittyのインストールディレクトリ> <br> ==== ソースコードからインストールする場合 ==== Kittyのビルドに必要な依存関係のライブラリをダウンロードする。<br> <u>ただし、最新のKittyでは、Python 3.7以降とGo 1.20以降が必要となることに注意する。</u><br> sudo zypper install gcc pkg-config dbus-1-devel libXcursor-devel libXrandr-devel libXi-devel libXinerama-devel \ libXcursor-devel libXrandr-devel Mesa-libGL-devel libxkbcommon-devel libxkbcommon-x11-devel libX11-devel \ libxcb-devel fontconfig-devel liblcms2-devel libcanberra-devel ImageMagick-devel \ python311-devel python3-Pygments sphinx libsphinxclient-devel python3-Sphinx \ go1.21 \ libb2-devel librsync-devel wayland-devel wayland-protocols-devel <br> もし、パッケージ管理システムが提供しているlibRsyncライブラリが古い場合、libRsyncライブラリを手動でインストールする必要がある。<br> [https://github.com/librsync/librsync/releases libRsyncのGithub]にアクセスして、ソースコードをダウンロードする。<br> ダウンロードしたファイルを解凍する。<br> tar xf librsync-<バージョン>.tar.gz cd librsync-<バージョン>.tar.gz <br> libRsyncをビルドおよびインストールする。<br> mkdir build && cd build cmake -DCMAKE_INSTALL_PREFIX=<libRsyncのインストールディレクトリ> -DCMAKE_BUILD_TYPE=Release .. make -j $(nproc) make install <br> [https://github.com/kovidgoyal/kitty/releases KittyのGithub]にアクセスして、Kittyのソースコードをダウンロードする。<br> ダウンロードしたファイルを解凍する。<br> tar xf kitty-<バージョン>-x86_64.txz cd kitty-<バージョン>-x86_64 <br> Kittyをビルドおよびインストールする。<br> export LD_LIBRARY_PATH="/<libRsyncのインストールディレクトリ>/lib64:$LD_LIBRARY_PATH" && \ export CFLAGS="-I/<libRsyncのインストールディレクトリ>/include $CFLAGS" && \ ./setup.py linux-package --prefix=<Kittyのインストールディレクトリ> # または export LD_LIBRARY_PATH="/<libRsyncのインストールディレクトリ>/lib64:$LD_LIBRARY_PATH" && \ export CFLAGS="-I/<libRsyncのインストールディレクトリ>/include $CFLAGS" && \ make -j $(nproc) <br> <code>make</code>コマンドを実行してビルドした場合、Kittyの実行ファイルは以下に示すパスに存在する。<br> /<Kittyのソースコードディレクトリ>/kitty/launcher/kitty <br> ==== 共通 ==== Kittyのデスクトップエントリファイルを作成する。<br> vi ~/.local/share/applications/Kitty.desktop <br> <syntaxhighlight lang="ini"> # ~/.local/share/applications/Kitty.desktopファイル [Desktop Entry] Version=1.0 Type=Application Name=kitty GenericName=Terminal emulator Comment=Fast, feature-rich, GPU based terminal TryExec=/<Kittyのインストールディレクトリ>/bin/kitty Exec=/<Kittyのインストールディレクトリ>/bin/kitty Icon=/<Kittyのインストールディレクトリ>/share/icons/hicolor/scalable/apps/kitty Categories=System;TerminalEmulator; </syntaxhighlight> <br> Kittyを使用したURLランチャーのデスクトップエントリファイルを作成する。<br> vi ~/.local/share/applications/Kitty-Open.desktop <br> <syntaxhighlight lang="ini"> # ~/.local/share/applications/Kitty-Open.desktopファイル [Desktop Entry] Version=1.0 Type=Application Name=kitty URL Launcher GenericName=Terminal emulator Comment=Open URLs with kitty TryExec=/<Kittyのインストールディレクトリ>/bin/kitty Exec=/<Kittyのインストールディレクトリ>/bin/kitty +open %U Icon=/<Kittyのインストールディレクトリ>/share/icons/hicolor/scalable/apps/kitty Categories=System;TerminalEmulator; NoDisplay=true MimeType=image/*;application/x-sh;application/x-shellscript;inode/directory;text/*;x-scheme-handler/kitty; </syntaxhighlight> <br> Fishを使用している場合、Kittyの設定ファイルをFishの設定ディレクトリへコピーする。<br> cp /<Kittyのインストールディレクトリ>/lib/kitty/shell-integration/fish/vendor_completions.d/* \ ~/.config/fish/completions/ cp /<Kittyのインストールディレクトリ>/lib/kitty/shell-integration/fish/vendor_conf.d/* \ ~/.config/fish/conf.d/ <br> ==== 設定 ==== ===== スクロールバー ===== Kittyのデフォルト設定では、スクロールバーは必要な場合のみ表示される。<br> <br> 常にスクロールバーを表示する場合は、Kittyの設定ファイル (~/.config/kitty/kitty.conf) に以下に示す設定追加する。<br> <br> scrollbar always # スクロールバーの外観もカスタマイズ可能 scrollbar_fill_bg #505050 scrollbar_thumb_bg #808080 scrollbar_padding 3 scrollbar_margin 3 <br> 設定を有効にする場合は、Kittyを再起動する必要がある。<br> <br> * キーボードでのスクロール *: [Ctrl] + [Shift] + [Up] または [Ctrl] + [Shift] + [Down] *: [Ctrl] + [Shift] + [Page Up] または [Ctrl] + [Shift] + [Page Down] *: <br> * マウスでのスクロール *: マウスホイール *: トラックパッドの2本指スクロール <br> ==== エラー ==== ===== 日本語入力ができない場合 ===== IBus IMEフレームワークのKittyサポートは、デフォルトでは無効になっている。<br> これを有効にするには、環境変数<code>GLFW_IM_MODULE</code>を<code>ibus</code>に設定する。<br> <syntaxhighlight lang="sh"> export GLFW_IM_MODULE=ibus </syntaxhighlight> <br> 互換性のあるIBusインターフェースが提供されているため、Fcitx5でも動作する。<br> <br> ===== 変数term ===== 変数<code>term</code>は、様々なソフトウェアがターミナルの機能や動作に関する情報を取得するために使用される。<br> 実行するソフトウェアやターミナルの違いにより、キーの操作、色、その他機能まで、不具合を起こす可能性がある。<br> <br> Kittyの初期設定では、変数<code>term</code>の値は<code>xterm-kitty</code>となっている。<br> もし、なんらかのソフトウェアのコマンドを実行する場合、以下に示すようなエラーメッセージが表示されることがある。<br> 'xterm-kitty': unknown terminal type. <br> この時、Kittyの設定ファイルに変数<code>term</code>の値を、<code>xterm</code>または<code>xterm-256color</code>に設定する。<br> vi ~/.config/kitty/kitty.conf <br> # ~/.config/kitty/kitty.confファイル term xterm-256color # または term xterm <br> ===== SSH接続 ===== kittyを使用して、terminfoを持たないリモートにSSH接続する場合、矢印キー、Backspace、Delete、Home / End等のキーが効かない場合がある。<br> <br> これを修正するには、以下に示す手順に従う。<br> # まず、リモート先のPCに接続する。 # 次に、リモート先のPCにおいて、~/.terminfo/xディレクトリ(Linuxの場合)、または、~/.terminfo/78ディレクトリ(Macの場合)を作成する。 #: <code> mkdir -p ~/.terminfo/{78,x}</code> # 最後に、Kittyのインストールディレクトリにあるshare/terminfo/x/xterm-kittyファイルを、上記で作成したディレクトリへコピーする。 #: <code>scp /<Kittyのインストールディレクトリ>/share/terminfo/x/xterm-kitty <リモート先PCのユーザ名>@<リモート先PCのホスト名またはIPアドレス>:~/.terminfo/x</code> <br> または、上記の設定を自動化するための<code>kitty +kitten</code>オプションを付加して、SSH接続を行う。<br> <u>ただし、<code>kitty +kitten</code>オプションと<code>SSHPass</code>ソフトウェアは同時に使用できないことに注意する。</u><br> kitty +kitten ssh <ユーザ名>@<ホスト名またはIPアドレス> -p <ポート番号> <br><br> == Alacritty == ==== Alacrittyのインストール ==== ビルドに必要な依存関係のライブラリをインストールする。<br> # RHEL sudo dnf install cmake cargo freetype-devel fontconfig-devel libxcb-devel libxkbcommon-devel xcb-util-devel sudo dnf group install "Development Tools" # SUSE sudo zypper install gcc13 gcc13-c++ cmake cargo freetype-devel fontconfig-devel libxcb-devel libxkbcommon-devel <br> [https://github.com/alacritty/alacritty/releases AlacrittyのGithub]にアクセスして、ソースコードをダウンロードする。<br> ダウンロードしたファイルを解凍する。<br> tar xf alacritty-<バージョン>.tar.gz cd alacritty-<バージョン> <br> または、以下のコマンドを実行して、Alacrittyのソースコードをダウンロードする。<br> git clone https://github.com/alacritty/alacritty.git Alacritty cd Alacritty <br> Alacrittyをビルドする。<br> # X11環境の場合 cargo build --release --features=x11 # Wayland環境の場合 cargo build --release --features=wayland <br> GCC / G++のバージョンを指定する場合は、以下に示すオプションを付加する。<br> # GCC 13 / G++ 13を使用する場合 CC=/usr/bin/gcc-13 CXX=/usr/bin/g++-13 \ cargo build --release --features=x11 <br> ビルドが正常に終了した場合、プロジェクトディレクトリにtarget/release/alacrittyファイルが生成される。<br> <br> 生成されたAlacrittyファイルを任意のディレクトリに配置する。<br> mv target/release/alacritty <任意のディレクトリ> <br> <u>※注意</u><br> <u>Alacritty 0.13以降、設定ファイルのパスが<u>~/.config/alacritty/alacritty.yml</u>ファイルから<u>~/.config/alacritty/alacritty.toml</u>へ変更された。</u><br> <u>もし、Alacritty 0.12以前からアップデートしている場合は、<code>alacritty migrate</code>コマンドを実行して設定ファイルをアップデートする。</u><br> # 設定ファイルのアップデート alacritty migrate <br> ==== タブ機能の有効化 ==== Alacrittyはタブ機能が存在しない。<br> そのため、タブ機能を有効化するには、tmuxを使用する必要がある。<br> <br> tmuxのビルドに必要な依存関係のライブラリをインストールする。<br> sudo zypper install make pkg-config bison ncurses-devel libevent-devel <br> まず、[https://github.com/tmux/tmux/releases tmuxのGithub]にアクセスして、ソースコードをダウンロードする。<br> https://github.com/tmux/tmux/releases/ <br> ダウンロードしたファイルを解凍する。<Br> tar xf tmux-<バージョン>.tar gz cd tmux-<バージョン> <br> ビルド用ディレクトリを作成する。<br> mkdir build && cd build <br> tmuxをビルドおよびインストールする。<br> ../configure --prefix=<tmuxのインストールディレクトリ> make -j $(nproc) make install <br> * タブ ** [Ctrl] + [b]キーを同時押下して、[C]キーを押下することにより、新しいタブを作成することができる。 ** [Ctrl] + [b]キーを同時押下して、[N]キーまたは[P]キーを押下することにより、タブを循環させることができる。 ** [Ctrl] + [b]キーを同時押下して[Shift] + [&]キーを押下、または、[Ctrl] + [b]キーを同時押下してタブを閉じることができる。 ** [Ctrl] + [b]キーを同時押下して[&]キーを押下、または、[Ctrl] + [b]キーを同時押下してウィンドウを閉じることができる。 ** [Ctrl] + [b]キーを同時押下して[W]キーを押下してタブの一覧を表示することができる。 * 分割 ** [Ctrl] + [b]キーを同時押下して[Shift] + ["]キーを同時押下することにより、タブを水平分割することができる。 ** [Ctrl] + [b]キーを同時押下して[Shift] + [%]キーを同時押下することにより、タブを垂直分割することができる。 ** [Ctrl] + [b]キーを同時押下して[x]キーを押下することにより、タブの分割を解除することができる。 <br> tmuxの設定ファイル(~/.tmux.confファイル)を作成する。<br> vi ~/.tmux.conf <br> # ~/.tmux.confファイル # Set prefix key to c-f instead of default c-b unbind C-b # [Ctrl] + [b]キーを無効にする set -g prefix C-f # [Ctrl] + [f]キーを有効にする bind C-f send-prefix # [Ctrl] + [f]キーを有効にする set-option -g default-shell <シェルの実行ファイルのパス 例. /usr/bin/zsh> # toogle last window by hitting again C-f bind-key C-f last-window # if multiple clients are attached to the same window, maximize it to the bigger one set-window-option -g aggressive-resize # Start windows and pane numbering with index 1 instead of 0 set -g base-index 1 setw -g pane-base-index 1 # re-number windows when one is closed set -g renumber-windows on # word separators for automatic word selection setw -g word-separators ' @"=()[]_-:,.' setw -ag word-separators "'" # Show times longer than supposed set -g display-panes-time 2000 # tmux messages are displayed for 4 seconds set -g display-time 4000 # {n}vim compability set-option -ga terminal-overrides ",xterm-256color:Tc" set -g default-terminal "screen-256color" # Split horiziontal and vertical splits, instead of % and ". We also open them in the same directory. # Because we use widescreens nowadays, opening a vertical split that takes half of the screen is not worth. For vertical we only open 100 lines width, for horizontal it's 20 columns. bind-key v split-window -h -l 100 -c '#{pane_current_path}' bind-key s split-window -v -l 30 -c '#{pane_current_path}' # Pressing Ctrl+Shift+Left (will move the current window to the left. Similarly right. No need to use the modifier (C-b). bind-key -n C-S-Left swap-window -t -1 bind-key -n C-S-Right swap-window -t +1 # Source file unbind r bind r source-file ~/.tmux.conf \; display "Reloaded!" # Use vim keybindings in copy mode setw -g mode-keys vi # Update default binding of `Enter` and `Space to also use copy-pipe unbind -T copy-mode-vi Enter unbind -T copy-mode-vi Space bind-key -T edit-mode-vi Up send-keys -X history-up bind-key -T edit-mode-vi Down send-keys -X history-down # setup 'v' to begin selection as in Vim bind-key -T copy-mode-vi 'v' send-keys -X begin-selection # copy text with `y` in copy mode bind-key -T copy-mode-vi 'y' send -X copy-selection-and-cancel # copy text with mouse selection without pressing any key bind-key -T copy-mode-vi MouseDragEnd1Pane send -X copy-selection-and-cancel # emacs key bindings in tmux command prompt (prefix + :) are better than vi keys, even for vim users set -g status-keys emacs # focus events enabled for terminals that support them set -g focus-events on # Sync panes (Send input to all panes in the window). When enabled, pane borders become red as an indication. bind C-s if -F '#{pane_synchronized}' \ 'setw synchronize-panes off; \ setw pane-active-border-style fg=colour63,bg=default; \ setw pane-border-format " #P "' \ 'setw synchronize-panes on; \ setw pane-active-border-style fg=red; \ setw pane-border-format " #P - Pane Synchronization ON "' # Faster command sequence set -s escape-time 0 # Have a very large history set -g history-limit 1000000 # Mouse mode on set -g mouse on # Set title set -g set-titles on set -g set-titles-string "#T" # Equally resize all panes bind-key = select-layout even-horizontal bind-key | select-layout even-vertical # Resize panes bind-key J resize-pane -D 10 bind-key K resize-pane -U 10 bind-key H resize-pane -L 10 bind-key L resize-pane -R 10 # Select panes # NOTE(arslan): See to prevent cycling https://github.com/tmux/tmux/issues/1158 bind-key j select-pane -D bind-key k select-pane -U bind-key h select-pane -L bind-key l select-pane -R # Disable confirm before killing bind-key x kill-pane # List of plugins # see this https://github.com/tmux-plugins/tpm to installation set -g @plugin 'tmux-plugins/tpm' set -g @plugin 'tmux-plugins/tmux-open' set -g @plugin 'tmux-plugins/tmux-yank' set -g @plugin 'tmux-plugins/tmux-prefix-highlight' # Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) run '~/.tmux/plugins/tpm/tpm' <br> tmuxでタブ機能を有効化して、Alacrittyを起動する。<br> /<Alacrittyのインストールディレクトリ>/alacritty -e /<tmuxのインストールディレクトリ>/bin/tmux <br><br> == Ghostty == ==== Ghosttyとは ==== Ghosttyは、GPUベースの高速ターミナルエミュレータである。<br> ネイティブのGUIレンダリングパイプラインを持ち、従来のターミナルと比較して高い描画性能を実現する。<br> <br> Ghosttyのビルドには特定のZigコンパイラのバージョンが必要であり、これがディストリビューション間で大きな違いを生じさせている。<br> RHELではコミュニティがメンテナンスするパッケージが利用可能である一方、SUSEでは公式リポジトリからの提供が困難となっている。<br> このため、RHELとSUSEでは実際の導入方法が異なり、それぞれの環境に応じた手順が必要である。<br> <br> Zigのバージョン要件は、Ghosttyのバージョンに応じて変化する。<br> 例えば、Ghostty 1.2ではZig 0.14.1、Ghostty 1.3ではZig 0.15.2が必要とされるリリースがある。<br> <u>そのため、ビルドする場合は、Ghosttyのバージョンに対応したZigがインストールされていることを確認する必要がある。</u><br> <br> Ghosttyの最新情報やリリース詳細は、公式Webサイトやリリースノートを参照することを推奨する。<br> <br> ==== RHEL ==== RHEL環境では、公式提供ではなく、コミュニティがメンテナンスするCOPRリポジトリを利用する方法がある。<br> raboo/ghosttyが提供するパッケージを使用するが、これは公式ではなくコミュニティ管理のものである。<br> <br> 利用するにあたり、EPELおよびCOPRの有効化が必要となる場合がある。<br> 利用可否は対象のRHELバージョン、EPELの有効化状況、COPR側のビルド状態に依存する。<br> <br> COPRの詳細を知りたい場合は、[https://copr.fedorainfracloud.org/coprs/raboo/ghostty%20raboo/ghostty COPRの公式Webサイト]を参照すること。<br> <br> まず、COPRリポジトリを有効化し、Ghosttyをインストールする。<br> <br> sudo dnf copr enable raboo/ghostty sudo dnf install ghostty <br> インストールが完了した後、Ghosttyのバージョンを確認する。<br> <br> ghostty --version <br> ==== SUSE ==== SUSEの公式リポジトリでは、パッケージが固定されたZigバージョンに依存できないというポリシーのため、Ghosttyのパッケージ提供が停止された。<br> そのため、SUSE系環境ではソースコードからのビルドが現実的な導入方法となる。<br> <br> SUSEでは、Zigによるビルドの時に環境変数や依存ライブラリの有無に注意が必要である。<br> <br> ソースコードからビルドする場合、GitHubが自動生成するtarballではなく、release.files.ghostty.orgが配布する公式のTarballを使用して、Zigを使用してビルドすることが推奨される。<br> 公式のTarballには、必要なサブモジュールや生成ファイルが含まれており、ビルドの再現性が高い。<br> <br> SUSEではgtk4-layer-shellがパッケージングされていないため、ビルド時に <code>-fno-sys=gtk4-layer-shell</code> オプションを指定する必要がある。<br> <br> まず、ビルドに必要な依存パッケージをインストールする。<br> <br> sudo zypper install gettext pkgconf ncurses-devel gtk4-devel libadwaita-devel <br> Zigは、対象とするGhosttyリリースが要求するバージョンを別途用意して、<code>zig version</code> コマンドで確認してからビルドする。<br> <br> * Zigの公式Webサイト *: https://ziglang.org/download/ <br> 次に、release.files.ghostty.orgから公式のTarballをダウンロードして、解凍する。<br> <br> * Ghosttyの公式Webサイト *: https://ghostty.org/download <br> wget https://release.files.ghostty.org/<バージョン 例: 1.3.1>/ghostty-<バージョン 例: 1.3.1>.tar.gz tar xf ghostty-<バージョン>.tar.gz cd ghostty-<バージョン> <br> Ghosttyをビルドする。<br> <br> zig build -p <Ghosttyのインストールディレクトリ> -Doptimize=ReleaseFast -fno-sys=gtk4-layer-shell <br> ビルドが完了した後、Ghosttyのバージョンを確認する。<br> <br> /<Ghosttyのインストールディレクトリ>/bin/ghostty --version <br><br> __FORCETOC__ [[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]]
インストール - ターミナル
に戻る。
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
Collapse