Gedit'i Ubuntu 16.04 LTS'de önceki (3.10.4) Sürüme nasıl indirebilirim?


17

Başlığın zaten söylediği gibi: Ubuntu 16.04 LTS ile birlikte gelen gedit 3.18.3 ile çalışmayan bazı eklentilerim var.

Ubuntu 14.04 LTS ve Ubuntu 15.10'da kullanılan 3.10.4 sürümüne nasıl geçebilir ve mümkün olan tüm eklentileri yükleyebilirim?

Ve eğer 3.10.4 artık gerekmiyorsa nasıl geri 3.18.3'e geri dönebilirim.


3
Kendimi içeren yeni Xenial'ın Gedit tasarımından nefret eden insanlar için harika. Muhtemelen bir gün atıl durumdayken prosedürünüzü deneyeceğim.
Bayt Komutanı

@ByteCommander Ne demek, yeni tasarım ? Gedit temel editördür, genellikle ciddi programlama için Geany veya daha kullanışlı bir ide kullanıyorum.
NoBugs

2
@NoBugs Gedit'in 15.10 veya önceki sürümlerde ve 16.04'te nasıl göründüğünü karşılaştırın. Yeni araç, araç çubuğunun çoğunu kaybetti ve çirkin IMO'ya benziyor.
Bayt Komutanı

@NoBugs: benim için estetiğin ötesine geçiyor. Gedit eklentisinin üstünde çalışan ve yeni araç çubuğunu dikkate almak için henüz yeniden yazılmamış bazı araçlar kullanıyorum.
user2413

Yanıtlar:


18

Çözüm oldukça karmaşıktır, bu yüzden dikkatlice okuduğunuzdan ve ilerlediğinizden emin olun. Bu marka için hazırlık olarak emin size böylece tüm paket kaynaklarının etkin /etc/apt/sources.listgibi görünüyor bu ve yükseltme yapın:

sudo apt-get update
sudo apt-get dist-upgrade
reboot

Eski sürümü yüklemek için:

Daha sonra ilk adım olarak, mevcut gedit sürümünü kaldırmanız gerekir. Bunu yapmak için terminalinizde ( ctrl+ alt+ t) aşağıdaki komutları çalıştırın :

# 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

Şimdi çalışmak için bir dizin hazırlayın. Kolaylık sağlamak için bunu ana dizinimizde yapıyoruz.

# creating directory and switching to it
mkdir ~/gedit-downgrade
cd ~/gedit-downgrade

Bir sonraki adım, wget-listindirmeyi kolaylaştırmak için bir dosya oluşturmaktır (tüm alanı kopyalayıp terminalinize yapıştırabilirsiniz). 64 bit sistem kullanmıyorsanız, burada i386 için uygun bağlantıları bulmak isteyebilirsiniz .

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

Şimdi bu wget-listdosya var, yazarak her şeyi tek seferde wget -i wget-listindirebilir, dosyaların indirilmesine izin verebilir ve ardından kurulumunuza başlayabilirsiniz.

Lütfen aşağıdaki adımları tek tek takip edin ve bağımlılık hatalarıyla karşılaşırsanız sudo apt-get remove <package-name>, paketin sorun yarattığını yansıtırsanız, bağımlılıkları elle yükleyin sudo apt-get install <package-name>ve dpkg hattını tekrar yapın. Yapmayın, yanisudo apt-get -f install bu kurulumu denerken çalıştırmayın : her şeyi dağıtacaktır.

Şimdi, gerekli paketlerle başlayalım (temiz bir 16.04 LTS kurulumunda test edilmiş ve çalışıyor):

# 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

Aşağıdaki paketler yalnızca isteğe bağlıdır ve bunları kolayca kurabilirsiniz, indirme bağımlılıkları yukarıdaki gibi temiz bir 16.04 LTS yüklemesinde verilir ve test edilir.

# 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

Şimdi bir güncelleme çalıştırdığınızda paketlerin değiştirilmeyeceğinden emin olmalısınız, bu yüzden sadece kurduğunuz paketleri belirttiğinizden emin olun:

# 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

Tüm süreci tersine çevirmek için şunları yapın:

# 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

Bunu yapacak bir senaryo var mı ?:

Evet, tüm süreci otomatikleştirmek için bir komut dosyası bile yaptım, buradan veya şu şekilde alabilirsiniz :

wget https://github.com/Videonauth/gdowngrade/blob/master/gdowngrade.sh

Sonra çalıştırmak için:

chmod 755 ./gdowngrade.sh
sudo ./gdowngrade.sh

Bu gupgrade.sh, tüm süreci basitçe tersine çevirmenize izin veren, sizin için çağrılan özel bir dosya oluşturur :

sudo ./gupgrade.sh

8

Giriş

Körük betiği, gedit 3.10.4 kurulumunu kaynaktan otomatik hale getirir. Kullanıcının daha yeni gedit'e geri dönmek istediğine karar vermesi durumunda, hem eski hem de yeni gedit sürümlerinin kullanılmasına izin verir. Komut dosyası /usr/share/applications/gedit_downgraded.desktop, eski gedit için güzel bir kısayola sahip olabilmeniz için oluşturulur.

Kullanımı oldukça basittir:

sudo ./downgrade_gedit.sh [option]

Seçenek -iyükleme veya -ukaldırma içindir

Kaynak kodu da çalıştırarak benim git üzerinde kullanılabilir:

git clone https://github.com/SergKolo/sergrep.git

Komut Dosyası Kaynağı

#!/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 "$@"

3

Şu anda Ubuntu 16.04 için 3.10 .debpaketiniz geditvar:

gedit
gedit-ortak

Bunları indirebilir (mimarinize bağlı olarak paketi seçebilirsiniz) ve kurabilirsiniz. Örneğin:

sudo dpkg -i gedit_3.10.4-0ubuntu13_amd64.deb gedit-common_3.10.4-0ubuntu13_all.deb 

(Bu komut geçerli sürümünüzü kaldıracak geditve yenisini yükleyecektir)

Ayrıca, gelecekteki olası güncellemelerin bu paketi yükseltmesinden kaçının (örneğin, onları beklemeye alma).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.