Skip to content

Instantly share code, notes, and snippets.

@PyYoshi
Last active May 28, 2024 11:34
Show Gist options
  • Save PyYoshi/10cb8e362ec2191560e77a14d7d0f135 to your computer and use it in GitHub Desktop.
Save PyYoshi/10cb8e362ec2191560e77a14d7d0f135 to your computer and use it in GitHub Desktop.
Ubuntu 24.04 で mozc-ut (fcitx5-mozc) をビルドする
sudo apt list --installed | grep fcitx | grep -o "^[^/]*" | xargs | xargs -I{} echo apt remove --allow-change-held-packages -y {} | sudo bash
sudo apt list --installed | grep mozc | grep -o "^[^/]*" | xargs | xargs -I{} echo apt remove --allow-change-held-packages -y {} | sudo bash

mkdir -p ./dist ./merge-ut-dictionaries ./mozc-src ./.temp
docker compose build
docker compoes up

sudo dpkg -i fcitx5-data_*.deb
sudo dpkg -i libfcitx5utils2_*.deb
sudo dpkg -i libfcitx5config6_*.deb
sudo dpkg -i libfcitx5core7_*.deb
sudo dpkg -i libfcitx5utils2_*.deb
sudo dpkg -i fcitx5-modules_*.deb
sudo dpkg -i fcitx5_*.deb
sudo dpkg -i libfcitx5-qt-data_*.deb
sudo dpkg -i libfcitx5-qt1_*.deb
sudo dpkg -i fcitx5-frontend-qt5_*.deb
sudo dpkg -i mozc-server*.deb
sudo dpkg -i mozc-data_*.deb
sudo dpkg -i mozc-utils-gui_*.deb
sudo dpkg -i fcitx-mozc-data_*.deb
sudo dpkg -i fcitx5-mozc_*.deb
sudo apt install -y fcitx5-config-qt

sudo apt list --installed | grep fcitx | grep -o "^[^/]*" | xargs | xargs -I{} echo apt-mark hold {} | sudo bash
sudo apt list --installed | grep mozc | grep -o "^[^/]*" | xargs | xargs -I{} echo apt-mark hold {} | sudo bash
#!/bin/bash
cd /mozc-src
rm -rf /mozc-src/fcitx5-* /mozc-src/mozc-*
apt-src update &&
apt-src install \
fcitx5 \
fcitx5-frontend-qt5 \
fcitx5-mozc
cd /mozc-ut-dictionaries
git clone https://github.com/utuhiro78/merge-ut-dictionaries.git &&
cd merge-ut-dictionaries/src &&
bash ./make.sh
cd /mozc-src
cat /mozc-ut-dictionaries/merge-ut-dictionaries/src/mozcdic-ut.txt >>$(apt-src location fcitx5-mozc)/src/data/dictionary_oss/dictionary00.txt &&
apt-src build fcitx5 &&
apt-src build fcitx5-frontend-qt5 &&
apt-src build fcitx5-mozc
export MOZCUT_NOW="$(date +%Y%m%d)" &&
mkdir -p "/mozc-binaries/$MOZCUT_NOW" &&
cp -r /mozc-src/*.deb "/mozc-binaries/$MOZCUT_NOW"
chown -R ubuntu:ubuntu /mozc-src /mozc-ut-dictionaries /mozc-binaries
apt-src clean \
fcitx5 \
fcitx5-frontend-qt5 \
fcitx5-mozc
services:
builder:
init: true
build:
context: .
dockerfile: Dockerfile
volumes:
- ./dist:/mozc-binaries
- ./merge-ut-dictionaries:/mozc-ut-dictionaries
- ./mozc-src:/mozc-src
- ./.temp/.apt-src:/root/.apt-src
command: "/bin/bash /build_mozc.sh"
FROM ubuntu:noble-20240429
COPY ubuntu.sources /etc/apt/sources.list.d/ubuntu.sources
RUN \
apt-get update \
&& apt-get install -y \
vim \
apt-src \
ruby \
git \
curl \
wget \
language-pack-ja \
tzdata \
&& update-locale LANG=ja_JP.UTF-8
RUN \
apt-get build-dep -y \
fcitx5 \
fcitx5-frontend-qt5 \
fcitx5-mozc
ENV TZ Asia/Tokyo
ENV LANG ja_JP.UTF-8
ENV RUBYOPT -EUTF-8
RUN \
mkdir -p \
/mozc-src \
/mozc-ut-dictionaries \
/mozc-src \
/mozc-binaries
COPY build_mozc.sh /build_mozc.sh
VOLUME /mozc-binaries
Types: deb deb-src
URIs: http://jp.archive.ubuntu.com/ubuntu/
Suites: noble noble-updates noble-backports
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
Types: deb deb-src
URIs: http://security.ubuntu.com/ubuntu/
Suites: noble-security
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment