Ubuntu 24.04 LTS 初期設定ガイド: 開発・研究環境構築

Ubuntu 24.04 LTS上でデータベース、AI/機械学習、3DCG、メディア処理、ソフトウェア開発などを行いたい大学生や技術者を対象としています。

このページでは,プログラミング処理系と開発環境(プログラムの自作、オープンソフトウェアの活用)、 データベース処理、 メディア処理、 その他のアプリケーション(インターネット、ファイル操作など)、 NVIDIA ドライバや NVIDIA CUDA や NVIDIA cuDNN, ディープラーニング応用のための各種ソフトウェアのインストール及び設定手順について、Ubuntu 24.04 LTS を基準とした情報を提供します。

Windows 環境向けの情報は別ページ »で説明しています。

目次

  1. Ubuntu 24.04 のインストールについて
  2. Ubuntu 24.04 の基本的な設定
  3. C/C++ コンパイラー,make,パッケージツール
  4. NVIDIA ドライバ,NVIDIA CUDA ツールキット, NVIDIA cuDNN
  5. Git, cmake, curl, wget, p7zip-full
  6. システムPython環境と基本パッケージ (非推奨)
  7. 隔離された Python 環境の構築と利用 (推奨)
  8. 数値演算ライブラリ (OpenBLAS, LAPACK, Intel MKL)
  9. ディープラーニング応用ライブラリ (dlib, OpenPose等)
  10. エディタとIDE
  11. Web ブラウザ,リモートファイル転送,リモート接続
  12. 各種ツール類(作図、ファイル検索など)
  13. PostgreSQL 16 (データベース)
  14. データベース管理ツール
  15. メディア関連ツール(GIS, 動画編集, 3DCG, 点群処理など)
  16. Unreal Engine (ゲームエンジン)
  17. Java 開発環境
  18. R システムとRStudio(統計解析環境)
  19. オプション: ゲーム環境

重要事項と注意事項

1. Ubuntu 24.04 のインストールについて

Ubuntu 24.04 LTS Desktop のインストール手順は、Ubuntu公式サイトのドキュメントや各種ガイドを参照してください。USBメモリからのブート、インストーラーの指示に従ったパーティション設定、ユーザー作成などが一般的な流れです。

参考: Ubuntu公式チュートリアル (英語) »

2. Ubuntu 24.04 の基本的な設定

2.1 OS のシステム更新

Ubuntuインストール後、まずシステム全体を最新の状態に更新します。これにより、セキュリティパッチやバグ修正が適用されます。

sudo apt update
sudo apt full-upgrade -y

カーネルなどの重要なコンポーネントが更新された場合に備え、更新後にシステムを再起動することを推奨します。

sudo /sbin/shutdown -r now

2.2 Ubuntu 24.04 のインストール直後の一般的な設定

インストール直後には、以下のような設定を行うことが一般的です。具体的な手順は環境や好みに応じて調整してください。

2.3 エディタのインストール例: Emacs

開発作業で使用するテキストエディタをインストールします。ここではEmacsの例を示します。

sudo apt update # 必要に応じて実行
sudo apt install -y emacs
# 日本語入力Mozcと連携する場合
sudo apt install -y emacs-mozc fcitx-libs-dev # fcitx関連は依存関係で必要となる場合あり

(他のエディタについてはセクション10を参照)

2.4 OpenSSH サーバーのセットアップ

他のコンピュータからSSHプロトコルを使ってUbuntuマシンにリモートログインする場合に設定します。

sudo apt update
sudo apt install -y openssh-server
# SSHサービスの起動状態を確認
sudo systemctl status ssh
# ファイアウォール (ufw) でSSHポート (通常22) を許可 (ufwが有効な場合)
sudo ufw allow ssh
sudo ufw status # 状態確認

セキュリティ向上のため、パスワード認証を無効にし、公開鍵認証を使用することを強く推奨します。設定手順は別ページ »で説明しています。

3. C/C++ コンパイラー,make,パッケージツール

ソフトウェアのソースコードからのビルドや開発に必要となる基本的なツール群をインストールします。`build-essential` はコンパイルに必要なパッケージ一式を含みます。

sudo apt update
sudo apt install -y build-essential gcc g++ make libtool pkg-config
# texinfo dpkg-dev はパッケージ開発等で必要なら追加
# sudo apt install -y texinfo dpkg-dev

C/C++ コンパイラーの動作確認

  1. エディタ(例: `nano /tmp/hello.c`)で以下の内容のファイル `/tmp/hello.c` を作成します。
    #include
    #include /* sizeof(size_t) のために必要 */
    
    int main() {
        printf("Hello, C World!\n");
        /* %zu は size_t 型に対応する正しい書式指定子です */
        printf("sizeof(size_t) on this system = %zu bytes\n", sizeof(size_t));
        return 0;
    }
    
  2. 作成したソースコードをコンパイルし、生成された実行ファイルを実行します。
    cd /tmp
    # -o オプションで出力ファイル名を指定 (例: hello_c_test)
    gcc hello.c -o hello_c_test
    # 実行
    ./hello_c_test
    

    実行結果として、「Hello, C World!」「sizeof(size_t) on this system = 8 bytes」(数値は環境により異なる)のように表示されれば、コンパイラは正しく動作しています。

4. NVIDIA ドライバ,NVIDIA CUDA ツールキット, NVIDIA cuDNN

重要事項 Ubuntu 24.04 LTS環境でのNVIDIA関連ソフトウェア(ドライバ、CUDA Toolkit、cuDNN)のインストールは、利用目的(特にディープラーニング)と環境によって最適な方法が異なります。バージョン間の互換性(ドライバ ⇔ CUDA ⇔ cuDNN ⇔ MLライブラリ)の確認が不可欠です。

推奨アプローチの概要

  1. NVIDIAドライバ Ubuntuの「ソフトウェアとアップデート」→「追加のドライバー」または `ubuntu-drivers` コマンドを利用するのが最も簡単で推奨されます。
  2. CUDA Toolkit & cuDNN
    • ML/DL開発 (推奨) 使用するライブラリ (TensorFlow, PyTorch等) の公式ドキュメントに従い、**Dockerコンテナ**を利用するか、推奨されるバージョンのCUDA/cuDNNをインストールします。Dockerは環境分離と再現性の観点から非常に有効です。
    • その他のCUDA開発 (runfile/tarball) NVIDIA公式サイトから、ドライババージョンと互換性のあるCUDA Toolkitのrunfileインストーラと、対応するcuDNNのtarballをダウンロードし、手動で設定します。手順は複雑になる場合があります。
    • aptリポジトリ (公式提供確認後) NVIDIAがUbuntu 24.04 (`noble`) 向けaptリポジトリを公式に提供している場合は、それを利用できますが、提供開始時期やバージョンに注意が必要です (NVIDIA CUDA Downloadsで確認)。

4.1 NVIDIA ドライバのインストール (Ubuntu推奨方法)

GUIを使う場合は「設定」→「システム」→「管理」→「ソフトウェアとアップデート」→「追加のドライバー」タブを開き、リストから推奨されるプロプライエタリドライバを選択して「変更の適用」をクリックします。

コマンドラインで行う場合は以下を実行します。

# システムが認識しているGPUと利用可能なドライバを表示
ubuntu-drivers devices
# 推奨されるドライバを自動的にインストール
sudo ubuntu-drivers autoinstall
# ドライバの有効化のためにシステムを再起動
sudo /sbin/shutdown -r now

再起動後、ターミナルで `nvidia-smi` コマンドを実行し、GPU情報とドライババージョンが表示されれば成功です。

nvidia-smi

4.2 CUDA Toolkit / cuDNN のインストール

ここでは、**方法B (runfile/tarball)** の手順例を参考として示します。バージョンは環境や要件に合わせて読み替えてください (例: CUDA 12.x 系)。この方法は複雑なため、方法A (Dockerやライブラリ推奨手順) の検討を強く推奨します。

参考: runfile/tarball による CUDA/cuDNN インストール手順例 (複雑・非推奨)

注意 実行前に必ずNVIDIA公式サイトで最新情報と互換性を確認してください。既存ドライバを上書きしないよう注意が必要です。

  1. CUDA Toolkit (runfile):
    1. NVIDIA CUDA Toolkit Archive から、OS: Linux, Arch: x86_64, Dist: Ubuntu, Ver: 24.04 (または互換バージョン), Installer: runfile(local) を選択し、適切なバージョンの `.run` ファイルをダウンロードします。
    2. ダウンロードしたファイルに実行権限を付与し、実行します。対話モードで、Driverのインストールは「No」を選択し、Toolkitと必要ならSamplesのみをインストールします。
    3. cd /path/to/downloaded/file/
      chmod +x cuda_*.run
      sudo ./cuda_*.run # 対話モードで実行、DriverインストールはNoを選択
      # またはサイレントインストール (オプションは要確認)
      # sudo ./cuda_*.run --toolkit --samples --no-opengl-libs --silent
      # デフォルトインストールパス: /usr/local/cuda-X.Y
                  
    4. 環境変数を設定します (`~/.bashrc` などに追記)。パスは実際のインストール先に合わせます。
    5. # 例: CUDA 12.4 の場合
      export CUDA_HOME=/usr/local/cuda-12.4
      export PATH=${CUDA_HOME}/bin:${PATH}
      export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
                  
    6. シェルを再起動するか `source ~/.bashrc` を実行し、`nvcc --version` で確認します。
  2. cuDNN (tarball):
    1. NVIDIA cuDNN Download (要NVIDIA Developer Program登録) から、インストールしたCUDA Toolkitバージョンに対応する cuDNN Library for Linux (x86_64 Tar) をダウンロードします。
    2. ダウンロードしたtarファイルを展開します。
    3. tar -xf cudnn-*.tgz
                  
    4. 展開されたディレクトリ (`include`, `lib`) 内のファイルを、CUDA Toolkitのインストールディレクトリにコピーします。
    5. # 例: cudnn-linux-x86_64-... ディレクトリが展開された場合
      cd cudnn-linux-x86_64-*/
      sudo cp include/cudnn*.h ${CUDA_HOME}/include/
      sudo cp lib/libcudnn* ${CUDA_HOME}/lib64/ # lib64 or lib
      sudo chmod a+r ${CUDA_HOME}/include/cudnn*.h ${CUDA_HOME}/lib64/libcudnn*
                  
    6. cuDNN Installation Guide に記載の方法でインストールを確認します (サンプルコードのコンパイル等)。

5. Git, cmake, curl, wget, p7zip-full のインストール

バージョン管理システムGit、ビルドシステムCMake、ファイル転送ツールcurl/wget、圧縮解凍ツールp7zipなど、開発や日常作業で頻繁に利用する基本ツールをインストールします。

sudo apt update
sudo apt install -y git cmake curl wget p7zip-full
# 必要であればCMakeのGUI/CUIフロントエンドもインストール
# sudo apt install -y cmake-curses-gui cmake-gui

6. システムPython環境と基本パッケージ (非推奨)

Ubuntu 24.04には標準でPython 3.12がインストールされています。このセクションでは、システム環境に必要な基本ツールをインストールする方法を示しますが、**開発プロジェクトには次章で説明する仮想環境の使用を強く推奨します。** システム環境への `pip install` は依存関係の問題を引き起こすリスクがあります。

6.1 Python3 開発用ファイル,pip, setuptools, venv

Pythonパッケージのビルドや仮想環境 (`venv`) の作成に必要な基本ツールをインストールします。

sudo apt update
sudo apt install -y python3-dev python3-pip python3-setuptools python3-venv build-essential

6.2 Python 開発環境 (Jupyter, Spyder等) (システム環境、非推奨)

aptでインストール可能なIDEやツールの例です。最新版が必要な場合やプロジェクトごとの管理のためには、仮想環境内への `pip install` が推奨されます。

sudo apt update
# Jupyter Notebook/QtConsole (apt版)
sudo apt install -y jupyter-notebook jupyter-qtconsole python3-ipykernel # カーネルも必要
# Spyder IDE (apt版、バージョンが古い可能性あり)
sudo apt install -y spyder

動作確認例 (Jupyter Qt Console):

sudo apt install -y python3-numpy python3-matplotlib # 依存パッケージ
jupyter qtconsole
# (コンソール内で import numpy as np; import matplotlib.pyplot as plt; ... 等を実行)

6.3 主要Pythonパッケージ (システム環境、非推奨)

繰り返しになりますが、開発には仮想環境 (次章参照) を利用してください。 システムにインストールする場合、バージョン競合のリスクがあります。

aptでインストール可能な基本パッケージの例:

sudo apt update
sudo apt install -y python3-numpy python3-scipy python3-pandas python3-matplotlib python3-sklearn python3-pil python3-h5py python3-opencv python3-requests python3-bs4 python3-lxml python3-yaml

TensorFlow, PyTorch, Jaxなどの機械学習ライブラリや、特定のバージョンが必要なパッケージは、必ず仮想環境内にインストールしてください。

7. 隔離された Python 環境の構築と利用 (推奨)

システムのPython環境とは別に、プロジェクトごとに独立したPython環境を構築することで、依存関係の衝突を防ぎ、環境の再現性を高めることができます。ここでは、**pyenv** を用いて複数のPythonバージョンを管理し、**venv** を用いてプロジェクト固有の仮想環境を作成する手順を推奨します。

7.1 pyenv のインストールと設定

pyenvは複数のPythonインタプリタを簡単に切り替えて利用できるようにするツールです。

  1. 依存関係のインストール (6.1 および 7.1 で実施済みのはず)
    sudo apt update
    sudo apt install -y --no-install-recommends make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev git
    
  2. pyenv のインストール (公式インストーラ推奨) pyenv-installer を利用します。
    curl https://pyenv.run | bash
    
  3. シェル設定 インストーラの指示に従い、`~/.bashrc` や `~/.zshrc` 等に環境変数を設定する行を追加します。
    # ~/.bashrc に追記する例
    export PYENV_ROOT="$HOME/.pyenv"
    command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
    eval "$(pyenv init -)"
    
  4. シェル再起動 設定を反映させるためにシェルを再起動するか、`exec "$SHELL"` を実行します。

7.2 特定のPythonバージョンをインストール (pyenv)

プロジェクトで使用したいPythonのバージョンをpyenvでインストールします。

  1. インストール可能なバージョンのリスト表示
    pyenv install --list
    
  2. 目的のバージョンのインストール (例: 3.12.3) ビルドに時間がかかることがあります。
    pyenv install 3.12.3
    
  3. インストール済みバージョンの確認
    pyenv versions
    

7.3 プロジェクト用仮想環境の作成と有効化 (venv)

インストールしたPythonバージョンを用いて、プロジェクト専用の仮想環境を作成します。

  1. 使用するPythonバージョンを選択 (シェル単位、またはディレクトリ単位で指定)
    # このシェルでのみ 3.12.3 を使う場合
    pyenv shell 3.12.3
    # カレントディレクトリ以下で 3.12.3 を使う場合
    # pyenv local 3.12.3
    
  2. venv で仮想環境を作成 (例: `~/venvs/myproject_env`)
    mkdir -p ~/venvs # 親ディレクトリがなければ作成
    python -m venv ~/venvs/myproject_env
    
  3. 仮想環境の有効化 (Activate) プロジェクト作業開始時に実行します。
    source ~/venvs/myproject_env/bin/activate
    # ターミナルのプロンプト表示が (myproject_env) $ のように変わります
    
  4. 仮想環境内のpip等を更新
    pip install --upgrade pip setuptools wheel
    
  5. 仮想環境の無効化 (Deactivate) 作業終了時に実行します。
    deactivate
    

7.4 仮想環境内へのパッケージインストールと利用

必ず仮想環境を有効化 (`source ~/venvs/myproject_env/bin/activate`) した状態で `pip install` を実行してください。 これにより、パッケージはシステム全体ではなく、現在の仮想環境内にのみインストールされます。

  1. 開発環境 (JupyterLab, Spyder等) のインストール
    pip install jupyterlab spyder ipykernel
    # Jupyterでこの仮想環境カーネルを認識させる場合
    python -m ipykernel install --user --name=myproject_env --display-name="Python (myproject_env)"
    
  2. 基本データサイエンス・数値計算パッケージ
    pip install numpy pandas matplotlib scikit-learn Pillow h5py seaborn plotly requests beautifulsoup4 lxml openpyxl
    
  3. TensorFlow (GPU版例)

    前提 NVIDIAドライバ、CUDA、cuDNN がシステムに正しくインストールされ、TensorFlowと互換性があること。

    # TensorFlow 2.16以降の推奨インストール方法 (要公式Doc確認)
    pip install tensorflow[and-cuda]
    # インストール後、GPU認識を確認
    python -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"
    
  4. PyTorch (GPU版例)

    PyTorch公式サイト (Get Started) で、OS:Linux, Package:Pip, Language:Python, Compute Platform:CUDA X.Y (インストール済みのCUDAバージョン) を選択し、表示されるコマンドを実行します。

    # 例: CUDA 12.1 対応版 (公式サイトで必ず確認)
    pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
    # インストール後、GPU認識を確認
    python -c "import torch; print(f'PyTorch version: {torch.__version__}'); print(f'CUDA available: {torch.cuda.is_available()}'); print(f'CUDA version: {torch.version.cuda}')"
    
  5. OpenCV
    pip install opencv-python # または opencv-contrib-python (両方は不可)
    # バージョン確認
    python -c "import cv2; print(cv2.__version__)"
    
  6. 地理情報系パッケージ例

    システムにGDAL等のライブラリ (`sudo apt install libgdal-dev gdal-bin`) が必要となる場合があります。

    pip install GDAL Fiona geopandas shapely pyproj rtree folium
    
  7. 仮想環境での数値演算性能確認

    仮想環境を有効化した状態でPythonインタプリタを起動し、セクション6.4に記載のベンチマークコードを実行して確認します。

    source ~/venvs/myproject_env/bin/activate
    python
    # >>> (6.4のコードを貼り付け実行)
    # >>> exit()
    
  8. 仮想環境でのTensorFlow/Keras画像分類例

    仮想環境を有効化し、必要なパッケージ (`Pillow`, `h5py`) をインストール後、Pythonインタプリタ内でセクション7.4末尾のサンプルコードを実行します。

    source ~/venvs/myproject_env/bin/activate
    pip install Pillow h5py
    python
    # >>> (7.4末尾のVGG16やInceptionV3のコードを貼り付け実行)
    # >>> exit()
    

8. 数値演算ライブラリ (OpenBLAS, LAPACK, Intel MKL)

NumPyやSciPyなどのPythonライブラリは、内部でBLAS (Basic Linear Algebra Subprograms) や LAPACK (Linear Algebra PACKage) といった低レベルの数値計算ライブラリを利用して、行列演算などを高速に実行します。

8.1 OpenBLAS, LAPACK

高パフォーマンスなオープンソースのBLAS/LAPACK実装です。多くのLinuxディストリビューションで標準的に利用されています。開発ヘッダーファイル (`-dev`) もインストールしておくと、ソースからビルドする際に役立ちます。

sudo apt update
sudo apt install -y libopenblas-dev liblapack-dev

8.2 Intel MKL (Math Kernel Library)

Intelが提供する、Intel CPU向けに最適化された高性能な数値演算ライブラリ群です。対応するPythonパッケージ(NumPy, SciPy, scikit-learnなど、Intel Distribution for Pythonやconda-forge経由で提供されるもの)と組み合わせることで、大幅なパフォーマンス向上が期待できる場合があります。

注意 MKLの利用には、Intel oneAPI Base Toolkitのインストールが必要です。最新のインストール手順はIntel公式サイトで確認してください。APTリポジトリの追加が必要です。**外部リポジトリ追加はセキュリティリスクを伴います。**

公式サイトの手順に従ってリポジトリを追加・設定した後、必要なコンポーネントをインストールします。

# Intelリポジトリ設定後...
sudo apt update
# MKL開発用ファイルを含む推奨パッケージセット (パッケージ名は要確認)
sudo apt install -y intel-oneapi-mkl-devel
# 必要に応じて他の oneAPI コンポーネントもインストール
# sudo apt install -y intel-oneapi-ipp-devel intel-oneapi-tbb-devel intel-oneapi-dal-devel intel-oneapi-mpi-devel

Python環境でMKLを利用するには、conda環境で `conda install numpy scipy scikit-learn -c intel` のようにインストールするか、MKLにリンクされたNumPy/SciPy等を含むディストリビューションを利用します。

9. ディープラーニング応用ライブラリ (dlib, OpenPose等)

これらのライブラリの多くはインストールが複雑で、特定の依存関係(C++ライブラリ、CUDAバージョン等)を持ちます。必ず各ライブラリの公式ドキュメントを参照し、可能であればDockerを利用するか、隔離された仮想環境にインストールしてください。

9.1 dlib (C++機械学習ライブラリ + Python binding)

顔検出、顔ランドマーク推定、顔認識、オブジェクトトラッキングなど、多岐にわたる機能を提供します。

推奨インストール方法 (Python仮想環境内):

# 仮想環境を有効化
source ~/venvs/myproject_env/bin/activate
# C++ビルドに必要な依存関係をシステムにインストール
sudo apt update
sudo apt install -y build-essential cmake libopenblas-dev liblapack-dev libjpeg-dev libpng-dev
# dlib Pythonパッケージをpipでインストール (ビルドに時間がかかる場合あり)
pip install dlib
# face_recognition パッケージ (dlibを使用)
pip install face_recognition

注意 dlibをGPUサポート付きでビルドする場合 (通常は不要)、CUDA ToolkitとcuDNNが正しく設定されている必要があり、`pip install` 時にCMakeのオプションを指定する必要があるなど、手順が複雑になります。

参考 (非推奨): ソースからdlibをビルドする手順例

注意 この手順は環境依存の問題が発生しやすく、公式ドキュメントの確認が必須です。`sudo python3 setup.py install` は非推奨です。

# 1. 依存関係のインストール (上記に加えてX11など)
sudo apt install -y libx11-dev

# 2. dlibソースのクローン
cd /tmp
git clone https://github.com/davisking/dlib.git
cd dlib

# 3. C++ライブラリのビルド (オプション)
# mkdir build; cd build
# cmake .. -DDLIB_USE_CUDA=OFF # CPU版ビルド例
# cmake --build . --config Release -j$(nproc)
# cd ..

# 4. Pythonバインディングのビルドとインストール (仮想環境内推奨)
source ~/venvs/myproject_env/bin/activate
python setup.py install # 仮想環境内へ
# または
# pip install . # カレントディレクトリからインストール

9.2 OpenPose (リアルタイム姿勢推定ライブラリ)

人体の骨格、顔、手のキーポイントをリアルタイムで検出できるライブラリです。

注意 OpenPoseのソースからのビルドは、依存関係が非常に多く(Caffe, OpenCV, CUDA/cuDNN等)、ビルド時間も長く、環境設定が極めて複雑です。Ubuntu 24.04での動作保証はされていません。**公式ドキュメント (GitHub) を熟読し、Dockerイメージの利用や、より導入が容易な代替ライブラリ(MediaPipe Pose, MMPoseなど)の利用を強く推奨します。**

参考 (非推奨): OpenPoseビルド手順の概要

注意 これはあくまで概要であり、詳細は公式ドキュメントを参照し、自己責任で行ってください。Ubuntu 24.04での依存関係は大きく変わっている可能性があります。`sudo make install` は非推奨です。

  1. 膨大な依存関係のインストール CMake, Git, Protobuf, GFlags, GLog, OpenCV (特定のバージョン要件あり), Boost, Atlas/OpenBLAS, CUDA, cuDNN など、多数のライブラリを事前にインストール・設定する必要があります。
  2. OpenPoseソースコードのクローン `git clone https://github.com/CMU-Perceptual-Computing-Lab/openpose.git`
  3. サードパーティ依存関係の取得 OpenPoseリポジトリ内のスクリプト等でCaffeなどの依存ライブラリを取得・ビルドします。
  4. CMakeによるビルド設定 `mkdir build && cd build` し、`cmake ..` を実行します。GPUモード (`-DGPU_MODE=CUDA`)、CUDAアーキテクチャ (`-DCUDA_ARCH=...`)、Pythonバインディング (`-DBUILD_PYTHON=ON`) など、多数のオプションを環境に合わせて正確に設定する必要があります。
  5. ビルド実行 `make -j$(nproc)` を実行します。ビルドには非常に長い時間がかかります。
  6. モデルのダウンロード ビルド後に、学習済みモデルをダウンロードする必要があります (`cd models; ./getModels.sh`)。
  7. 実行 ビルドディレクトリ内の実行ファイル (`./build/examples/openpose/openpose.bin`) を実行します。

10. エディタとIDE

プログラミングや設定ファイルの編集に使用するエディタや統合開発環境(IDE)のインストール例です。

10.1 Geany (軽量IDE)

sudo apt update; sudo apt install -y geany geany-plugins

10.2 Sublime Text (高機能エディタ)

ライセンス購入が必要な場合があります。公式APTリポジトリ手順に従ってインストールします。外部リポジトリ追加はセキュリティリスクを伴います。

# 公式サイトの手順に従ってください (以下は例)
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/sublimehq-archive.gpg > /dev/null
echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
sudo apt update
sudo apt install -y sublime-text

10.3 Visual Studio Code (高機能エディタ/IDE)

非常に人気があり、豊富な拡張機能で様々な言語開発に対応します。

公式サイトから.debパッケージをダウンロードしてインストールします。

sudo apt install ./code_*.deb # ダウンロードしたファイル名を指定

拡張機能はエディタ内からインストールします (例: Python, C/C++, Java Extension Pack, Remote - SSH, Docker, GitLens)。

10.4 emacs (高機能エディタ)

sudo apt update; sudo apt install -y emacs
# 日本語入力Mozc連携 (必要に応じて)
# sudo apt install -y emacs-mozc mozc-utils-gui

設定は `~/.emacs.d/init.el` または `~/.emacs` に記述します (設定例はセクション10.5の元の記述を参照)。

11. Web ブラウザ,リモートファイル転送,リモート接続

11.1 Firefox

Ubuntu標準のWebブラウザです (通常プリインストール済)。

sudo apt update; sudo apt install -y firefox firefox-locale-ja

11.2 Chromium

Google Chromeの基盤となっているオープンソースのWebブラウザ。

sudo apt update; sudo apt install -y chromium-browser chromium-browser-l10n

11.3 FileZilla (FTP/SFTPクライアント)

サーバーとのファイル転送に利用します。

sudo apt update; sudo apt install -y filezilla

11.4 Remmina (リモートデスクトップクライアント)

RDP, VNC, SSHなど多くのプロトコルに対応するリモート接続クライアント (通常プリインストール済)。

sudo apt update; sudo apt install -y remmina remmina-plugin-rdp remmina-plugin-vnc

11.5 xrdp (RDPサーバー)

WindowsのリモートデスクトップクライアントからUbuntuに接続する場合にインストールします。

sudo apt update; sudo apt install -y xrdp
# xrdpユーザーを証明書グループに追加 (初回のみ)
sudo adduser xrdp ssl-cert
# ファイアウォールでRDPポート(3389)を許可
sudo ufw allow 3389/tcp
sudo ufw status
# xrdpサービスを再起動して設定を反映
sudo systemctl restart xrdp

12. 各種ツール類(作図、ファイル検索など)

日々の作業や開発に役立つユーティリティツールです。

12.1 mlocate (ファイル検索 CLI)

高速なファイル名検索コマンド `locate` を提供します。初回使用前にデータベースの作成が必要です。

sudo apt update; sudo apt install -y mlocate; sudo updatedb

12.2 catfish (ファイル検索 GUI)

findやlocateを利用するGUIのファイル検索ツール。

sudo apt update; sudo apt install -y catfish

12.3 jq, jsonlint (JSON処理)

jqはコマンドラインJSONプロセッサ、jsonlintはJSON構文チェッカー。

sudo apt update; sudo apt install -y jq jsonlint

12.4 Pinta (画像編集)

シンプルなビットマップ画像エディタ。

sudo apt update; sudo apt install -y pinta

12.5 Flameshot (スクリーンショット)

注釈機能などが豊富なスクリーンショットツール。

sudo apt update; sudo apt install -y flameshot

12.6 GraphViz (グラフ描画)

DOT言語からグラフ画像を生成。

sudo apt update; sudo apt install -y graphviz

12.7 diagrams.net Desktop (作図)

フローチャート、UML、ネットワーク図など多様な図を作成できるツール。

公式サイトから最新の.debパッケージをダウンロードしてインストール。

sudo apt install ./drawio-*.deb

12.8 inotify-tools (ファイル監視)

ファイルシステムのイベント(変更、アクセス等)を監視するツール。

sudo apt update; sudo apt install -y inotify-tools

12.9 hardinfo (システム情報 GUI)

ハードウェアやOSの詳細情報をGUIで表示。

sudo apt update; sudo apt install -y hardinfo

12.10 ネットワークユーティリティ

`net-tools`は古いコマンド (`ifconfig`等) を含みます。`iproute2` (`ip`コマンド、通常標準装備) が推奨されます。`netcat`はネットワーク接続のテスト等に利用します。

sudo apt update; sudo apt install -y net-tools netcat-openbsd

13. PostgreSQL 16 (データベース)

Ubuntu 24.04 LTS の標準リポジトリに含まれるリレーショナルデータベース管理システム PostgreSQL 16 をインストールします。

13.1 インストールと初期設定

  1. PostgreSQL 16と関連パッケージのインストール
    sudo apt update
    # PostgreSQLサーバー、クライアント、共通ファイル、拡張集
    sudo apt install -y postgresql-16 postgresql-client-16 postgresql-contrib-16
    # C言語等での開発用ヘッダファイル
    sudo apt install -y postgresql-server-dev-16 libpq-dev
    # PostGIS (地理空間情報拡張)
    sudo apt install -y postgis postgresql-16-postgis-3
    # PL/Python3 (データベース内でPythonを使う拡張)
    sudo apt install -y postgresql-plpython3-16
    # Python用ドライバ (psycopg2 - apt版)
    sudo apt install -y python3-psycopg2
    # Java JDBCドライバ (apt版)
    sudo apt install -y default-jdk libpostgresql-jdbc-java
    
  2. サービスの確認 通常、インストール後に自動起動・有効化されます。
    sudo systemctl status postgresql@16-main.service
    # 必要に応じて: sudo systemctl start/stop/restart/enable/disable postgresql@16-main.service
    
  3. psqlでの接続確認 `postgres` OSユーザーとして `postgres` DBユーザーで接続します (peer認証)。
    sudo -u postgres psql
    # psql> \conninfo  -- 接続情報を表示
    # psql> \l         -- データベース一覧を表示
    # psql> \q         -- psqlを終了
    
  4. バージョンの確認
    psql --version
    

13.2 パフォーマンスチューニング例 (postgresql.conf)

設定ファイル (`/etc/postgresql/16/main/postgresql.conf`) を編集することでパフォーマンスを改善できます。**変更後はPostgreSQLの再起動 (`sudo systemctl restart postgresql@16-main`) が必要です。** 設定値はシステムのリソース(特にメモリ量)に合わせて調整してください。

一般的な設定例:

# メモリ関連 (環境に合わせて調整)
shared_buffers = 1GB            # 推奨: 物理メモリの1/4程度
effective_cache_size = 4GB      # 推奨: 物理メモリの1/2~3/4程度 (OSキャッシュ含む)
maintenance_work_mem = 256MB    # VACUUM, CREATE INDEX等で使用。一時的に増やしても良い
work_mem = 64MB                 # ソートやハッシュで使用。クエリ毎。複雑なクエリが多いなら増やす

# チェックポイント関連 (書き込み負荷に応じて調整)
# max_wal_size = 1GB              # WALサイズ上限 (デフォルトで良い場合が多い)
# min_wal_size = 80MB             # WALサイズ下限

# その他
# default_statistics_target = 100 # 統計情報の精度。複雑なクエリが多いなら増やす
# random_page_cost = 1.1          # SSD/NVMeの場合、4.0(HDD)から下げることを検討
# effective_io_concurrency = 200  # 高速なストレージ(NVMe等)で有効な場合あり (0は無効)

警告 データ損失リスクを伴う設定 (`fsync = off`, `wal_level = minimal` など) は、テスト環境以外では絶対に使用しないでください。

13.3 psql の基本的な使い方

`psql` は強力なコマンドラインインターフェースです。

(詳細は 別ページ » で説明)

13.4 簡単なSQL実行例

sudo -u postgres psql
CREATE TABLE users (id serial PRIMARY KEY, username text UNIQUE NOT NULL, created_at timestamptz DEFAULT now());
INSERT INTO users (username) VALUES ('alice'), ('bob');
SELECT * FROM users;
DROP TABLE users;
\q

13.5 PL/Python 拡張の有効化

データベース関数をPythonで記述できるようにします。

sudo -u postgres psql
CREATE EXTENSION plpython3u;
-- 確認 (plpython3uが表示されればOK)
SELECT lanname FROM pg_language WHERE lanispl = true;
\q

14. データベース管理ツール

GUIでデータベースを操作・管理するためのツールです。

14.1 DBeaver Community Edition (汎用DBクライアント)

多くのデータベースに対応する人気のクライアント。

公式サイトから最新の.debパッケージをダウンロードしてインストールします。

sudo apt install ./dbeaver-ce_*.deb

14.2 pgAdmin 4 (PostgreSQL専用クライアント)

PostgreSQL公式の管理ツール。Webベースのインターフェースも提供。

公式サイトのAPTリポジトリ設定手順に従ってインストールします。外部リポジトリ追加はセキュリティリスクを伴います。

# 公式サイトの手順に従ってリポジトリとキーを追加後...
sudo apt update
sudo apt install pgadmin4 # または pgadmin4-desktop / pgadmin4-web

14.3 SQL Workbench/J (汎用DBクライアント)

Javaベースのクライアント。

公式サイトから最新版のzipファイルをダウンロードし、任意の場所に展開して `sqlworkbench.sh` を実行します。

14.4 SQLite 3 (コマンドライン)

SQLiteデータベースファイルを操作する基本コマンド。

sudo apt update; sudo apt install -y sqlite3

14.5 SQLiteStudio (SQLite用GUI)

SQLiteデータベース用のGUI管理ツール。

公式サイトから最新版のtar.xzアーカイブをダウンロードし、任意の場所に展開して `sqlitestudio` を実行します。

15. メディア関連ツール(GIS, 動画編集, 3DCG, 点群処理など)

各種メディア処理やコンテンツ作成に役立つツール群です。

15.1 地理情報システム (GIS) 関連

15.2 Google Earth Pro (地球儀ビューア)

公式サイトから.debをダウンロードしてインストール。

sudo apt install ./google-earth-pro-stable_current_amd64.deb

15.3 MeCab (日本語形態素解析)

sudo apt update; sudo apt install -y mecab libmecab-dev mecab-ipadic-utf8 python3-mecab

15.4 ImageMagick (画像処理コマンドライン)

画像の変換、リサイズ、合成などをコマンドラインで行えます。

sudo apt update; sudo apt install -y imagemagick

15.5 VLC (メディアプレイヤー)

多くのフォーマットに対応する万能メディアプレイヤー。

sudo apt update; sudo apt install -y vlc

15.6 OpenShot (動画編集)

ノンリニア動画編集ソフトウェア。apt版は古い可能性があるので、公式サイトのAppImage等も検討。

sudo apt update; sudo apt install -y openshot-qt

15.7 Kdenlive (動画編集)

より高機能なノンリニア動画編集ソフトウェア。FlatpakやAppImageでの利用も推奨されます。

sudo apt update; sudo apt install -y kdenlive

15.8 Blender (3DCG制作)

モデリング、レンダリング、アニメーション、VFX等の統合環境。公式サイトから最新版をダウンロードして利用することを強く推奨します (tar.xzを展開して実行)。

# apt版 (バージョンが古い可能性が高い)
# sudo apt update; sudo apt install -y blender

15.9 MakeHuman (人体モデリング)

人体モデルを作成するツール。公式サイトで最新版を確認してください。

15.10 MeshLab (3Dメッシュ処理)

3Dスキャンデータやポリゴンメッシュの編集・処理・可視化。公式サイトからSnap, Flatpak, AppImage等でのインストール推奨。

# apt版 (古い可能性あり)
# sudo apt update; sudo apt install -y meshlab

15.11 CloudCompare (3D点群/メッシュ処理)

大規模な点群データの処理・比較・可視化。公式サイトからSnapやFlatpak等でのインストール推奨。

15.12 PCL (Point Cloud Library)

3D点群処理のためのC++ライブラリ。

sudo apt update; sudo apt install -y libpcl-dev
参考 (非推奨): ソースからのPCLビルド手順例

注意 複雑で時間がかかります。

# 依存関係インストール (例: sudo apt install build-essential cmake libboost-all-dev ...)
# git clone https://github.com/PointCloudLibrary/pcl.git; cd pcl
# mkdir build && cd build; cmake ..; make -j$(nproc)
# sudo make install # 非推奨

15.13 OpenCV (コンピュータビジョンライブラリ)

画像処理・コンピュータビジョンのための定番ライブラリ。

aptでインストールするか、Python仮想環境内で `pip install opencv-python` を推奨します。

sudo apt update; sudo apt install -y libopencv-dev python3-opencv
# または仮想環境内で: pip install opencv-python
参考 (非推奨): ソースからのOpenCVビルド手順例

注意 非常に複雑で時間がかかります。CUDA連携等はさらに複雑化します。

# 1. 依存関係インストール (例: sudo apt install build-essential cmake git pkg-config libgtk-3-dev ...)
# 2. OpenCV + Contrib ソース取得 (git clone)
# 3. ビルドディレクトリ作成 (mkdir build; cd build)
# 4. CMake実行 (cmake .. -Dオプション多数...)
# 5. ビルド (make -j$(nproc))
# 6. インストール (sudo make install 非推奨)

16. Unreal Engine (ゲームエンジン)

注意 Unreal Engine 5が主流です。利用にはEpic GamesアカウントとGitHubアカウントの連携、ライセンス同意が必要です。ビルドには高性能PC、長時間のビルド時間、数十GB以上のディスク空き容量が必須です。

公式ドキュメント (ソースコードのダウンロード, ソースからのビルド) に従い、GitHubからソースコードをクローンし、`Setup.sh`, `GenerateProjectFiles.sh`, `make` を実行してビルドします。

17. Java,Java 開発環境

Java言語での開発に必要なJDK (Java Development Kit) と、IDEの例です。

17.1 OpenJDK

オープンソースのJava実装。Ubuntu 24.04 LTSではOpenJDK 21などが利用可能です。

sudo apt update
# LTS版であるOpenJDK 21 JDKをインストールする場合
sudo apt install -y openjdk-21-jdk
# または、ディストリビューションが推奨するデフォルトJDK
# sudo apt install -y default-jdk
# バージョン確認
java -version
javac -version

`JAVA_HOME` 環境変数の設定は、多くのツールで自動検出されるため必須ではありませんが、必要に応じて設定します (例: `/usr/lib/jvm/java-21-openjdk-amd64`)。

17.2 Eclipse IDE for Java Developers

Java開発で広く使われる統合開発環境(IDE)。

apt版 (`sudo apt install eclipse`) は古い可能性があるため、公式サイトから「Eclipse Installer」または「Eclipse IDE for Java Developers」パッケージをダウンロードして利用することを推奨します。

17.3 IntelliJ IDEA Community Edition

JetBrains社が提供する人気のJava IDE。無償のCommunity Editionがあります。

公式サイトからダウンロードするか、Snap (`sudo snap install intellij-idea-community --classic`) でインストールできます。

17.4 GreenFoot, BlueJ (教育用Java環境)

教育向けのシンプルなJava開発環境。

それぞれGreenFoot公式サイトBlueJ公式サイトから最新版をダウンロードしてインストールしてください。

18. R システムとRStudio(統計解析環境)

統計解析とデータ可視化のための言語Rと、その統合開発環境RStudioのインストール手順です。

18.1 R システム本体のインストール (CRANリポジトリ推奨)

CRAN (The Comprehensive R Archive Network) のUbuntuリポジトリを利用することで、最新版に近いRをインストールできます。外部リポジトリ追加はセキュリティリスクを伴います。

# 依存パッケージのインストール
sudo apt update
sudo apt install -y --no-install-recommends software-properties-common dirmngr
# CRAN GPGキーの追加 (キーは公式サイトで確認が必要な場合があります)
wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | sudo tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc
# CRANリポジトリの追加 (noble = Ubuntu 24.04)
sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu noble-cran40/"
# パッケージリストの更新とR本体のインストール
sudo apt update
sudo apt install -y --no-install-recommends r-base r-base-dev
# バージョン確認
R --version

追加のパッケージのインストール

sudo apt -y install   r-recommended
sudo apt -y install   r-mathlib
sudo apt -y install   r-cran-boot
sudo apt -y install   r-cran-class
sudo apt -y install   r-cran-cluster
sudo apt -y install   r-cran-codetools
sudo apt -y install   r-cran-foreign
sudo apt -y install   r-cran-hmisc
sudo apt -y install   r-cran-kernsmooth
sudo apt -y install   r-cran-lattice
sudo apt -y install   r-cran-mass
sudo apt -y install   r-cran-matrix
sudo apt -y install   r-cran-mgcv
sudo apt -y install   r-cran-nlme
sudo apt -y install   r-cran-nnet
sudo apt -y install   r-cran-rcmdr
sudo apt -y install   r-cran-rpart
sudo apt -y install   r-cran-spatial
sudo apt -y install   r-cran-survival
sudo apt -y install   r-cran-vr
sudo apt -y install   r-cran-rodbc
sudo apt -y install littler
sudo apt -y install libjpeg62
ls /usr/lib/R/

18.2 RStudio Desktopのインストール

Rのための高機能なIDEです。無償版のRStudio Desktopをインストールします。

公式サイトからUbuntu 22+/Debian 11+ 向けの最新の `.deb` パッケージをダウンロードします。

sudo apt install ./rstudio-*-amd64.deb # ダウンロードしたファイル名を指定

18.3 R パッケージのインストール

Rのパッケージは、**Rコンソールを通常ユーザーで起動し (`sudo` なし)、`install.packages()` 関数を使用して個人のライブラリにインストールする**ことを強く推奨します。これにより、システム環境を汚さず、権限の問題も避けられます。

Bioconductorのパッケージは `BiocManager` を使用します。

一般的なパッケージのインストール例 (Rコンソール内で実行):


# Rを起動 (ターミナルで R と入力)

# よく使われるデータ操作・可視化パッケージ (tidyverseメタパッケージも便利)
install.packages(c("dplyr", "tidyr", "ggplot2", "data.table", "lubridate", "stringr", "readr", "readxl"))

# モデリング・機械学習関連の例
install.packages(c("caret", "randomForest", "glmnet", "xgboost", "lme4", "forecast", "survival"))

# レポーティング・インタラクティブ関連
install.packages(c("rmarkdown", "knitr", "shiny", "plotly", "DT"))

# Bioconductor パッケージのインストール例
if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager")
# BiocManager::install(c("GenomicRanges", "SummarizedExperiment")) # 例

# CRAN Task Views (関連パッケージ一覧) の利用例
# install.packages("ctv")
# library(ctv)
# available.views() # 利用可能なビュー一覧
# install.views("MachineLearning") # 機械学習関連パッケージを一括インストール (時間と容量注意)

# インストール済みパッケージの確認
# installed.packages()
# library() # ロード可能なパッケージ一覧

# Rコンソールの終了
# quit() # 保存するか聞かれるので n (no) を選択することが多い
参考: 以前の大量パッケージインストールコマンド (非推奨)

以下のコマンドは古い形式であり、システムへの直接インストールを試みるため非推奨です。必要なパッケージは上記のように個別にインストールしてください。

# echo 'options(repos="http://cran.rstudio.com"); update.packages(checkBuilt=TRUE, ask=FALSE)' | sudo R --vanilla
# echo 'source("http://bioconductor.org/biocLite.R")' > /tmp/a.$$.r # 古いBiocLite
# echo 'biocLite("EBImage") ' >> /tmp/a.$$.r
# cat /tmp/a.$$.r | sudo R --vanilla
# echo 'install.packages("dplyr", ...)' | sudo R --vanilla
# ... (多数のパッケージ) ...
# for i in Cluster Graphics ...; do ... install.views ... done | sudo R --vanilla
# ... (さらに多数のパッケージ) ...

19. オプション: ゲーム環境

Ubuntuでゲームを楽しむためのいくつかの方法と、aptでインストール可能なゲームの例です。

aptでのインストール例:

sudo apt update
sudo apt install -y 0ad flightgear frozen-bubble supertuxkart wesnoth gnome-chess gnome-mahjongg aisleriot extremetuxracer warzone2100 hedgewars openttd scorched3d pingus
参考: aptでインストール可能なゲームパッケージ例(一部、古い可能性あり)

以下のリストは過去のバージョンのものであり、Ubuntu 24.04で利用可能か、または最新版かは保証されません。必要に応じてパッケージ名を確認してください。

# sudo apt -yV install wesnoth-1.10-dw # 古いバージョン指定例
# sudo apt -yV install  wesnoth libmikmod2 libsdl-mixer1.2 libsdl-net1.2 libsmpeg0
# sudo apt -yV install  wesnoth-1.10 wesnoth-1.10-aoi wesnoth-1.10-core wesnoth-1.10-data wesnoth-1.10-did wesnoth-1.10-dm wesnoth-1.10-ei wesnoth-1.10-httt wesnoth-1.10-l wesnoth-1.10-low wesnoth-1.10-music wesnoth-1.10-nr wesnoth-1.10-sof wesnoth-1.10-sotbe wesnoth-1.10-thot wesnoth-1.10-trow wesnoth-1.10-tsg wesnoth-1.10-ttb wesnoth-1.10-utbs
# sudo apt -yV install  wesnoth-1.10-data wesnoth-1.0-music
# sudo apt -yV install  libphysfs1 trigger trigger-rally trigger-rally-data
# sudo apt -yV install  libsdl-net1.2 scorched3d scorched3d-data
# sudo apt -yV install  hedgewars hedgewars-data libmikmod2 libsdl-mixer1.2 libsdl-net1.2 libsmpeg0
# sudo apt -yV install  openttd openttd-data openttd-opengfx openttd-openmsx timidity timidity-daemon
# sudo apt -yV install  openttd-opensfx
# sudo apt -yV install  libglee0d1 libphysfs1 warzone2100 warzone2100-data warzone2100-music
# sudo apt -yV install  nexuiz nexuiz-data nexuiz-music nexuiz-textures
# sudo apt -yV install  libode1 darkplaces
# sudo apt -yV install  frogatto frogatto-data libmikmod2 libsdl-mixer1.2 libsmpeg0
# sudo apt -yV install  fb-music-high frozen-bubble frozen-bubble-data libmikmod2 libsdl-gfx1.2-4 libsdl-mixer1.2 libsdl-net1.2 libsdl-pango1 libsdl-perl libsmpeg0
# sudo apt -yV install gnome-games gnome-games-common gnome-games-extra-data
# sudo apt -yV install gnotski gnobots2 swell-foop gnotravex glchess lightsoff gnect torcs torcs-data torcs-data-tracks pingus bouncy circuslinux defendguin fretsonfire
# sudo apt -yV install supertuxkart-data supertuxkart tuxpuck tuxtype tuxtype-data cowsay
# sudo apt -yV install extremetuxracer extremetuxracer-data extremetuxracer-extras
# sudo apt -yV install magicor magicor-data qimo-games supertux supertux-data smc smc-data smc-music
# sudo mkdir /usr/share/games/smc/campaign # 古い設定の可能性
# sudo apt -yV install libphysfs1 tuxonice-userui tuxmath tuxpaint tuxpaint-data tuxpaint-stamps-default tuxpaint-plugins-default tuxguitar
# sudo apt -yV install redeclipse redeclipse-data
# sudo apt -yV install kturtle parley kwordquiz quadrapassel gbrainy adonthell adonthell-data laby gnome-chess khangman blinken gnomine atomix atomix-data sudoku gnome-sudoku kanagram
# sudo apt -yV install ri-li ri-li-data gamine gamine-data aisleriot fretsonfire-game fretsonfire-songs-sectoid fretsonfire-songs-muldjord iagno gnibbles ktuberling gtali glines ghotski childsplay gnome-mahjongg numptyphysics
# sudo apt -yV install blikken desktop-profiles freemind freemind-doc geogebra javahelp2 kbruch mathpiper melting simplyhtml gcompris gcompris-data gcompris-sound-en yorick yorick-data yorick-z celestia-gnome stellarium stellarium-data celestia-common libmarblewidget11