Kendi sorumun cevabı:
- <7.4.0 birlik sürümü için Launcher.cpp, unityshell.cpp, DashController.cpp ve HudController.cpp ve
- Birlik 7.4.0 sürümü için Launcher.cpp ve UnitySettings.ccp
birlik kaynak paketinden.
Ama bundan daha fazla cevap veriyorum, çünkü sorumun cevabını arayan herkes de bu kaynak dosyalarla ne yapacağını bilmek isteyecek.
İçindekiler:
A. Kendinizi derleyin veya
B. İkili dosyayı alın
Feragatname: ALL'de ipucu yok ve bu sadece birlik 5.20.2 ile 12.04, birlik 7.2.6 ile 14.04, birlik 7.2.2 ile 15.10 ve birlik 7.4.0 ile 16.04 üzerinde test edildi
A.Başlatıcıyı göstermemek için Birlik derleyin
0. Sabırsızlık için
Bu komut dosyasının en az 12.04, 14.04 ve 15.10 için çalışması gerekir. Sonunda sadece gerektiği gibi rahatsızlık:
#!/bin/bash
mkdir temp-build-dir; cd temp-build-dir
export HWE=$(dpkg-query -l xserver*-lts-* | grep ^ii | cut -d" " -f3 | rev | cut -d- -f1 | rev | sort -u)
sudo apt-get install unity xserver-xorg-video-dummy-lts-$HWE
sudo apt-get build-dep unity
sudo apt-get install apt-show-versions devscripts dpkg-dev fakeroot nano
apt-get source unity
cd unity-*
# you can leave the comment field in the changelog empty but dont forget to save the file
EDITOR=nano debchange --newversion $(apt-show-versions unity | cut -d " " -f2)
find . -iname Launcher.cpp -exec sed -i -e '1,/void Launcher::DrawContent(nux::GraphicsEngine/b' -e '0,/{/s//{\nreturn;/' {} \;
# for unity 7.4.0 comment out this for statement and read the explanation Nr. A.4
for i in unityshell.cpp DashController.cpp HudController.cpp; do
find . -iname $i -exec sed -i -e 's/launcher_width =/launcher_width =0; \/\//' {} \;
done
dpkg-buildpackage -rfakeroot -d -us -uc -b
sudo dpkg -i ../unity_*.deb
# For 12.04 use:
# gconftool --type Integer --set /apps/compiz-1/plugins/unityshell/screen0/options/launcher_hide_mode 1
# For 14.04 use:
# dconf write "/org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode" 1
Sonra birliği yeniden başlatın ve işiniz bitti.
1. Doğru kaynak dosyaları arayın
Biraz deneme yanılma işleminden sonra değiştirilecek kaynak dosyalarının
- Launcher.cpp -> artık başlatıcıyı göstermeyecek bir satır ekle
- unityshell.cpp, DashController.cpp ve HudController.cpp -> başlatıcı genişliğini sıfıra ayarlayın
Dört dosyanın tümü "birlik" kaynak paketinde bulunur.
2. Kaynakları alın
Birlik için derlemeler kurmadan önce bazı bağımlılık sorunlarını gidermek için xserver-xorg-video-dummy-lts- {HWE sürümünüz} paketini manuel olarak yüklemem gerekti:
sudo apt-get install xserver-xorg-video-dummy-lts-{put your HWE name here}
Bu komutla HWE'nizin adını (sürümünü) bulabilirsiniz:
dpkg-query -l xserver*-lts-* | grep ^ii | cut -d" " -f3 | rev | cut -d- -f1 | rev | sort -u
Bundan sonra geri kalanı çalıştı:
sudo apt-get build-dep unity
apt-get source unity
cd unity-*
3. Launcher.cpp dosyasına bir satır koyun
find . -iname launcher.cpp -exec gedit {} \;
"Void Launcher :: DrawContent (nux :: GraphicsEngine & GfxContext, bool force_draw)" işlevini arayın ve bir "return;" sadece vücudunda böyle başlar:
void Launcher::DrawContent(nux::GraphicsEngine& GfxContext, bool force_draw)
{
return; //dont show launcher anymore
...
Bu, fırlatıcıyı artık göstermemek için yeterlidir. Ancak çizgi ve hud, ekranın sol tarafındaki fırlatıcı için yeri kullanılmadan bırakacaktır.
4. Unityshell.cpp, DashController.cpp ve HudController.cpp / UnitySettings.cpp'de başlatıcı genişliğini sıfıra ayarlayın
Birlik <7.4.0 için:
Unityshell.cpp, DashController.cpp ve HudController.cpp'deki tüm "launcher_width =" oluşumlarını "launcher_width = 0; //" ile değiştirmek için bir düzenleyici kullanın.
Veya sadece bu komutu kullanın
for i in unityshell.cpp DashController.cpp HudController.cpp; do find . -iname $i -exec sed -i -e 's/launcher_width =/launcher_width =0; \/\//' {} \; ; done
Birlik 7.4.0 için:
UnitySettings.cpp dosyasını bulun ve LauncherSize öğesinin sonundaki dönüş değerini aşağıdaki gibi değiştirin:
int Settings::LauncherSize(int monitor) const
{
if (monitor < 0 || monitor >= (int)monitors::MAX)
{
LOG_ERROR(logger) << "Invalid monitor index: " << monitor << ". Returning 0.";
return 0;
}
return 0; // pimpl->launcher_sizes_[monitor];
}
Bu, yalnızca çizginin ekranın sol tarafında, başlatıcı tarafından kullanılacak herhangi bir kenar boşluğu olmadan gösterilmesini istiyorsanız gereklidir.
5. Değişiklik günlüğünde doğru sürümü ayarlayın
Benim durumumda (12.04, birlik 5.20.2) Birlik kaynağının sürümünü 5.20'den 5.20.2'ye değiştirmek zorunda kaldım
EDITOR=nano debchange --newversion $(apt-show-versions unity | cut -d " " -f2)
yüklemeden önce bağımlılıkları kırmamak için derlemeden önce. Dosyayı kaydetmeyi unutmayın.
6. Derleyin ve yükleyin
Sonra bunu kullanarak yeniden derlenmiş:
dpkg-buildpackage -rfakeroot -d -us -uc -b
Yeni paketi yükledi:
sudo dpkg -i ../unity_*.deb
(Görebildiğim ve test edebildiğim kadarıyla, aslında gereken tek dosya
find . -name libunityshell.so | grep unity/usr/lib/compiz/libunityshell.so
/Usr/lib/compiz/libunityshell.so yerine yenisini koymak yeterli olmalı, ancak emin olmak istiyorsanız yukarıda belirtilen şekilde yeni birlik paketini kurun.)
7. Başlatıcıyı otomatik gizlemeye ayarlayın
# For 12.04:
gconftool --type Integer --set /apps/compiz-1/plugins/unityshell/screen0/options/launcher_hide_mode 1
# For 14.04:
dconf write "/org/compiz/profiles/unity/plugins/unityshell/launcher-hide-mode" 1
Bu kadar. Birlik yeniden başlatıldı ve fırlatıcı gitti!
B. Güvenmeyi ve ikiliyi almayı tercih ederseniz
İkili ve birlik versiyonunu ve PC mimarisini birleştirmeyi tercih ediyorsanız
unity --version
getconf LONG_BIT
aşağıda bulunabilir, sadece doğru paketi indirin
32 bit
64bit
ve indirdikten sonra deb dosyasını kontrol edin
md5sum unity_*.deb
Sonuç bunlardan biri olmalı
0a5f7fc9255262e5803656d83f84f7c5 unity_5.20.0-0ubuntu3_amd64_nolauncher.deb
717dc41f4cad6410c997e1014f5f3f1d unity_5.20.0-0ubuntu3_i386_nolauncher.deb
594eb8b87f8a56697865c051c4db5073 unity_5.20.2_i386_nolauncher.deb
8ed070afa4d7d6da8222d03b8ad5ebf3 unity_7.2.6+14.04.20160408-0ubuntu1_amd64_nolauncher.deb
abd32e40e8a10bd603b9fc44014cb179 unity_7.2.6+14.04.20151021-0ubuntu1_i386_nolauncher.deb
43c56b889028bf368da01780c0a099b9 unity_7.3.2+15.10.20151016-0ubuntu1_amd64_nolauncher.deb
64474d1a8280ed4113d748a57422ddcc unity_7.3.2+15.10.20151016-0ubuntu1_i386_nolauncher.deb
4fecdb9b4f590e00609baa3b98f55cc0 unity_7.4.0+16.04.20160715-0ubuntu1_amd64_nolauncher.deb
Ardından paketi yükleyin
sudo dpkg -i unity_*.deb
başlatıcıyı birliği otomatik olarak gizleyecek ve yeniden başlatacak şekilde ayarlayın. Bu kadar!
Bir şeyler ters giderse ve birlik başlamazsa:
sudo apt-get install --reinstall unity
Ancak her şey işe yararsa, yeni paketin güncellenmesini önlemek isteyebilirsiniz:
echo "unity hold" | sudo dpkg --set-selections
Bilgisayarımda yalnızca "unity_5.20.2_i386_nolauncher.deb" dosyası derlendi. Diğer deb dosyaları, komut dosyasının bu varyasyonu kullanılarak "bulut bilgisayarlar" (makine odaları bulutlara çok benzediği için) üzerinde yapıldı:
#!/bin/bash
sudo apt-get update
sudo apt-get -y dist-upgrade
sudo apt-get -y build-dep unity
sudo apt-get -y install unity devscripts dpkg-dev fakeroot nano
mkdir temp-build-dir; cd temp-build-dir
rm -r unity-*
apt-get source unity
cd unity-*
find . -iname Launcher.cpp -exec sed -i -e '1,/void Launcher::DrawContent(nux::GraphicsEngine/b' -e '0,/{/s//{\nreturn;/' {} \;
# for unity 7.4.0 comment out this for statement and read the explanation Nr. A.4
for i in unityshell.cpp DashController.cpp HudController.cpp; do
find . -iname $i -exec sed -i -e 's/launcher_width =/launcher_width =0; \/\//' {} \;
done
dpkg-buildpackage -rfakeroot -d -us -uc -j2 -b
cp ../unity_*.deb ../$(echo ../unity_*.deb | sed -e 's/.deb$/_nolauncher.deb/')