제목이 이미 말했듯이 : 우분투 16.04 LTS와 함께 제공되는 gedit 3.18.3과 함께 실행되지 않는 플러그인이 있습니다.
Ubuntu 14.04 LTS 및 Ubuntu 15.10에서 사용 된 버전 3.10.4로 다운 그레이드하고 가능한 모든 플러그인을 설치하려면 어떻게해야합니까?
3.10.4가 더 이상 필요하지 않으면 어떻게 다시 3.18.3으로 되돌릴 수 있습니까?
제목이 이미 말했듯이 : 우분투 16.04 LTS와 함께 제공되는 gedit 3.18.3과 함께 실행되지 않는 플러그인이 있습니다.
Ubuntu 14.04 LTS 및 Ubuntu 15.10에서 사용 된 버전 3.10.4로 다운 그레이드하고 가능한 모든 플러그인을 설치하려면 어떻게해야합니까?
3.10.4가 더 이상 필요하지 않으면 어떻게 다시 3.18.3으로 되돌릴 수 있습니까?
답변:
해결책은 매우 복잡하므로주의 깊게 읽고 진행하십시오. 이 메이크업에 대한 준비로서 확실히 당신은 당신의 있도록 모든 패킷 소스를 사용할 /etc/apt/sources.list
같은 모양 이 및 업그레이드를 수행합니다
sudo apt-get update
sudo apt-get dist-upgrade
reboot
그런 다음 첫 번째 단계로 기존 버전의 gedit를 제거해야합니다. 이렇게하려면 터미널 ( ctrl+ alt+ t) 에서 다음 명령을 실행하십시오 .
# this installs the build dependencies
sudo apt-get build-dep gedit gedit-plugins
sudo apt-get install moreutils
# this uninstalls the 3.18.3 version of gedit, gedit-dev,
# gedit-plugins and gedit-common and should get rid of everything else
# installed for gedit
sudo apt-get remove gedit gedit-dev gedit-plugins gedit-common
이제 작업 할 디렉토리를 준비하십시오. 편의상 홈 디렉토리에서 수행합니다.
# creating directory and switching to it
mkdir ~/gedit-downgrade
cd ~/gedit-downgrade
다음 단계는 wget-list
다운로드를보다 쉽게하기 위해 파일을 만드는 것입니다 (전체 필드를 복사하여 터미널에 붙여 넣을 수 있습니다). 64 비트 시스템을 사용하지 않는 경우 여기 에서 i386에 대한 적절한 링크를 찾을 수 있습니다 .
cat > wget-list << "EOF"
http://mirrors.kernel.org/ubuntu/pool/main/g/gedit/gedit-common_3.10.4-0ubuntu13_all.deb
http://mirrors.kernel.org/ubuntu/pool/main/g/gedit/gedit_3.10.4-0ubuntu13_amd64.deb
http://mirrors.kernel.org/ubuntu/pool/main/g/gedit/gedit-dev_3.10.4-0ubuntu13_amd64.deb
http://mirrors.kernel.org/ubuntu/pool/universe/g/gedit-developer-plugins/gedit-developer-plugins_0.5.15-0ubuntu1_all.deb
http://mirrors.kernel.org/ubuntu/pool/universe/g/gedit-latex-plugin/gedit-latex-plugin_3.8.0-3build1_all.deb
http://mirrors.kernel.org/ubuntu/pool/universe/g/gedit-plugins/gedit-plugins_3.10.1-1ubuntu3_amd64.deb
http://mirrors.kernel.org/ubuntu/pool/universe/g/gedit-r-plugin/gedit-r-plugin_0.8.0.2-Gtk3-Python3-1ubuntu1_all.deb
http://mirrors.kernel.org/ubuntu/pool/universe/g/gedit-source-code-browser-plugin/gedit-source-code-browser-plugin_3.0.3-3_all.deb
http://mirrors.kernel.org/ubuntu/pool/universe/g/gedit-valencia-plugin/gedit-valencia-plugin_0.8.0-0ubuntu2_amd64.deb
http://mirrors.kernel.org/ubuntu/pool/universe/r/rabbitvcs/rabbitvcs-gedit_0.16-1_all.deb
http://mirrors.kernel.org/ubuntu/pool/universe/s/supercollider/supercollider-gedit_3.6.6~repack-2-1build1_all.deb
EOF
이제 wget-list
파일이 준비되었습니다.를 입력하여 모든 것을 한 번에 wget -i wget-list
다운로드하고 파일을 다운로드 한 다음 설치를 시작할 수 있습니다.
아래 단계를 하나씩 따르십시오 sudo apt-get remove <package-name>
. 패키지가 문제를 일으키는 것을 반영하는 종속성 오류가 발생하면 종속성을 직접 설치 sudo apt-get install <package-name>
한 다음 dpkg 라인을 다시 수행하십시오. 하지 마, 내가하지 않는다는 의미는 실행 sudo apt-get -f install
이 설치를 시도하는 동안 : 그것은 것 엉망이 모든 것을까지.
이제 필수 패키지 (16.04 LTS를 새로 설치 한 상태에서 테스트 및 작업)를 시작하겠습니다.
# install gedit-common (essential needed)
sudo dpkg -i gedit-common_3.10.4-0ubuntu13_all.deb
# install gedit (essential needed)
sudo dpkg -i gedit_3.10.4-0ubuntu13_amd64.deb
# install gedit-dev (essential needed)
sudo dpkg -i gedit-dev_3.10.4-0ubuntu13_amd64.deb
# install gedit-plugins (essential needed)
# here are some steps needed follow them carefully
# unpacking the .deb file
sudo dpkg-deb -R gedit-plugins_3.10.1-1ubuntu3_amd64.deb tmp
# editing tmp/DEBIAN/control:
# change 'python3 (<< 3.5), python3 (>= 3.4~), python3.4' to 'python3 (>= 3.5~), python3.5'
sed 's/python3 (<< 3\.5), python3 (>= 3\.4~), python3\.4/python3 (>= 3.5~), python3.5/' tmp/DEBIAN/control | sudo sponge tmp/DEBIAN/control
# editing tmp/DEBIAN/postinst
# change 'py3compile -p gedit-plugins /usr/lib/x86_64-linux-gnu/gedit/plugins -V 3.4' to
# 'py3compile -p gedit-plugins /usr/lib/x86_64-linux-gnu/gedit/plugins -V 3.5'
sed 's/3\.4/3.5/' tmp/DEBIAN/postinst | sudo sponge tmp/DEBIAN/postinst
# packing a new .deb file
sudo dpkg-deb -b tmp gedit-plugins_3.10.1-1ubuntu4_amd64.deb
# changing ownership of the new .deb file replace username with your username
sudo chown username:username gedit-plugins_3.10.1-1ubuntu4_amd64.deb
# removing tmp
sudo rm -rfv tmp
# installing it
sudo dpkg -i gedit-plugins_3.10.1-1ubuntu4_amd64.deb
다음 패키지는 선택 사항 일 뿐이며 쉽게 설치할 수 있어야합니다. 다운로드 할 종속성은 위와 같이 16.04 LTS 새로 설치시 제공되고 테스트됩니다.
# install gedit-developer-plugins (optional)
sudo apt-get install python-pocket-lint
sudo dpkg -i gedit-developer-plugins_0.5.15-0ubuntu1_all.deb
# install gedit-latex-plugin (optional)
sudo apt-get install rubber
sudo dpkg -i gedit-latex-plugin_3.8.0-3build1_all.deb
# install gedit-r-plugin (optional but needs gedit-plugins)
sudo dpkg -i gedit-r-plugin_0.8.0.2-Gtk3-Python3-1ubuntu1_all.deb
# install gedit-source-code-browser-plugin (optional)
sudo apt-get install ctags
sudo dpkg -i gedit-source-code-browser-plugin_3.0.3-3_all.deb
# install gedit-valencia-plugin (optional)
# unpacking .deb file
sudo dpkg-deb -R gedit-valencia-plugin_0.8.0-0ubuntu2_amd64.deb tmp
# edit tmp/DEBIAN/control
# change 'libvala-0.28-0 (>= 0.15.1)' to 'libvala-0.30-0 (>= 0.15.1)'
# change 'libvte-2.90-9 (>= 1:0.27.2)' to 'libvte-2.91-0 (>= 0.27.2)'
sed -e 's/libvala-0\.28-0 (>= 0\.15\.1)/libvala-0.30-0 (>= 0.15.1)/' -e 's/libvte-2\.90-9 (>= 1:0\.27\.2)/libvte-2.91-0 (>= 0.27.2)/' tmp/DEBIAN/control | sudo sponge tmp/DEBIAN/control
# packing a new .deb file
sudo dpkg-deb -b tmp gedit-valencia-plugin_0.8.0-0ubuntu3_amd64.deb
# changing ownership of the new .deb file replace username with your username
sudo chown username:username gedit-valencia-plugin_0.8.0-0ubuntu3_amd64.deb
# removing tmp
sudo rm -rfv tmp
# installing it
sudo dpkg -i gedit-valencia-plugin_0.8.0-0ubuntu3_amd64.deb
# install rabbitvcs-gedit (optional)
sudo apt-get install rabbitvcs-core
sudo dpkg -i rabbitvcs-gedit_0.16-1_all.deb
# install supercollider-gedit (optional)
sudo apt-get install supercollider-language
sudo dpkg -i supercollider-gedit_3.6.6~repack-2-1build1_all.deb
이제 업데이트를 실행할 때 패키지가 변경되지 않도록해야하므로 설치 한 패키지 만 명시해야합니다.
# now protecting this all from upgrading
sudo apt-mark hold gedit-common gedit gedit-dev gedit-developer-plugin gedit-latex-plugin gedit-plugins gedit-r-plugin gedit-source-code-browser-plugin gedit-valencia-plugin rabbitvcs-gedit supercollider-gedit
# removing protection from upgrades
sudo apt-mark unhold gedit-common gedit gedit-dev gedit-developer-plugin gedit-latex-plugin gedit-plugins gedit-r-plugin gedit-source-code-browser-plugin gedit-valencia-plugin rabbitvcs-gedit supercollider-gedit
# simply do an upgrade
sudo apt-get update
sudo apt-get dist-upgrade
예, 전체 프로세스를 자동화하는 스크립트조차 만들었습니다. 여기에서 얻을 수 있습니다 .
wget https://github.com/Videonauth/gdowngrade/blob/master/gdowngrade.sh
그런 다음 실행하십시오.
chmod 755 ./gdowngrade.sh
sudo ./gdowngrade.sh
이렇게 gupgrade.sh
하면 다음과 같이 간단히 전체 프로세스를 되돌릴 수 있는 사용자 정의 파일이 생성 됩니다.
sudo ./gupgrade.sh
다음 스크립트는 소스에서 gedit 3.10.4 설치를 자동화합니다. 사용자가 새로운 gedit로 돌아 가기를 결정하는 경우 이전 gedit 버전과 최신 gedit 버전을 모두 사용할 수 있습니다. 스크립트 /usr/share/applications/gedit_downgraded.desktop
는 이전 gedit에 대한 멋진 바로 가기를 가질 수 있도록 만듭니다 .
사용법은 간단합니다.
sudo ./downgrade_gedit.sh [option]
옵션은 -i
설치 또는 -u
제거를위한 것입니다
소스 코드는 내 자식에서도 사용할 수 있으며 다음을 실행하면 얻을 수 있습니다.
git clone https://github.com/SergKolo/sergrep.git
#!/bin/bash
#
###########################################################
# Author: Serg Kolo , contact: 1047481448@qq.com
# Date:
# Purpose:
# A script to install version 3.10.4 of gedit on Ubuntu
# 16.04 . Some users are unhappy with new gedit design
# while others want to downgrade in order to use plugins
# not available in the new gedit. This script simplifies
# the downgarde process and building from source.
# The source is obtained from Gnome's official ftp channels
# The 3.10.4 is installed separatelly, so if you want to go
# back to the newer version or used along-side 3.10.4 , you
# can do so, as the newer version is not uninstalled
# Written for: http://askubuntu.com/q/766055/295286
# Tested on: Ubuntu 16.04
###########################################################
# Copyright: Serg Kolo , 2016
#
# Permission to use, copy, modify, and distribute this software is hereby granted
# without fee, provided that the copyright notice above and this permission statement
# appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
set -e
download_gedit()
{
# Here gnome's official ftp channel is used
# feel free to use something else
# just keep in mind you'd need to make changes to script accordingly
wget http://ftp.gnome.org/pub/GNOME/sources/gedit/3.10/gedit-3.10.4.tar.xz
}
extract_gedit()
{
ARCHIVE="gedit-3.10.4.tar.xz"
tar --extract --xz --verbose --file "$ARCHIVE" && \
rm "$ARCHIVE"
}
resolve_depends()
{
apt-get install intltool libenchant-dev libxml2-dev libgtksourceview-3.0-dev gsettings-desktop-schemas-dev libpeas-dev itstool libxml2-utils
}
make_desktop_file()
{
cat > /usr/share/applications/gedit_downgraded.desktop <<EOF
[Desktop Entry]
Name=Gedit(downgraded)
Type=Application
Terminal=false
Exec=/usr/local/bin/gedit %U
EOF
}
make_install_gedit()
{
cd gedit-3.10.4
./configure #PKG_CONFIG_PATH="$(pkg-config --variable pc_path pkg-config)"
make
make install
}
install()
{
# If /opt/gedit-3.10.4 doesn't exist, that's a first run
# otherwise - create the directory, download and extract
cd /opt
if [ ! -d "gedit-3.10.4" ] ; then
mkdir gedit-3.10.4
download_gedit
extract_gedit
fi
resolve_depends
make_install_gedit
make_desktop_file
#mark gedit to be held back
dpkg --set-selections <<< "gedit hold"
}
uninstall()
{
cd /opt/gedit-3.10.4
make uninstall
hash -r
[ -e /usr/share/applications/gedit_downgraded.desktop ] && \
rm /usr/share/applications/gedit_downgraded.desktop
}
parse_args()
{
local OPTIND option
while getopts "iu" option
do
case ${option} in
i) install && exit 0 ;;
u) uninstall && exit 0 ;;
\?) echo "Invalid option -${option}" > /dev/stderr
esac
done
}
main()
{
if [ $# -eq 0 ] ; then
echo "Must specify -i or -u option" > /dev/stderr
exit 1
fi
if [ $( id -u ) -ne 0 ] ; then
echo "Must run as root" > /dev/stderr
exit 1
else
parse_args "$@"
fi
}
main "$@"
현재 Ubuntu 16.04 용 3.10 .deb
패키지가 gedit
있습니다.
다운로드하여 아키텍처에 따라 패키지를 선택하고 설치할 수 있습니다. 예를 들어 :
sudo dpkg -i gedit_3.10.4-0ubuntu13_amd64.deb gedit-common_3.10.4-0ubuntu13_all.deb
(이 명령은 현재 버전을 제거 gedit
하고 새 버전을 설치합니다)
또한 향후 업데이트로 인해이 패키지가 업그레이드되는 것을 피하십시오 (예 : 보류 목록에두기)