#!/bin/sh # # Copyright (C) 2008-2014 Rubén Rodríguez <ruben@trisquel.info> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # VERSION=12 . ./config # Remove the arrow in the main menu button sed 's/"tooltip", tooltip,/"tooltip", "Trisquel",/; s/"has-arrow", TRUE,/"has-arrow", FALSE,/' -i gnome-panel/panel-menu-button.c # Disable patches related to the gnome sessions for patch in 41_classic_layout.patch 01_gnome-wm.patch 50_ubuntu_sessions.patch 49_no_screensaver.patch; do rm debian/patches/$patch sed /$patch/d -i debian/patches/series done # Profile handling cat << EOF > data/trisquel-panel-profile.desktop [Desktop Entry] Type=Application Name=Trisquel panel profile updater Exec=trisquel-panel-profile NoDisplay=true X-GNOME-AutoRestart=false X-GNOME-Autostart-Phase=Initialization OnlyShowIn=GNOME; EOF cat << EOF > data/trisquel-panel-profile #!/bin/sh VERSION=\$(lsb_release -rs) if ! grep "^\$VERSION$" \$HOME/.config/profilemigrated -q 2>/dev/null; then GS=\$(gsettings get org.gnome.gnome-panel.layout object-id-list | sed "s/, 'clock'//") gsettings set org.gnome.gnome-panel.layout object-id-list "\$GS" echo \$VERSION > \$HOME/.config/profilemigrated fi EOF chmod 755 data/trisquel-panel-profile # Custom xsession cat << EOF > data/trisquel-session.desktop [Desktop Entry] Name=Trisquel Comment=This session logs you into GNOME with the traditional panel Exec=gnome-session --session=gnome-flashback TryExec=gnome-session Icon= Type=Application X-LightDM-DesktopName=GNOME EOF cat << EOF > data/50-trisquel-session.conf [SeatDefaults] user-session=trisquel-session EOF cat <<EOF > debian/trisquel-session.install data/50-trisquel-session.conf /usr/share/lightdm/lightdm.conf.d/ data/trisquel-session.desktop /usr/share/xsessions debian/gnome-wm.desktop /usr/share/applications debian/gnome-flashback-services.desktop /usr/share/applications debian/scripts/gnome-wm /usr/bin usr/share/gnome-session/sessions data/trisquel-panel-profile.desktop /etc/xdg/autostart data/trisquel-panel-profile /usr/sbin EOF # Custom package sed '/Package: gnome-session/,/^$/d' -i debian/control.in cat << EOF >> debian/control.in Package: trisquel-session Architecture: all Depends: ${misc:Depends}, gnome-panel (>= 3.0), gnome-session-bin, gnome-session-common, metacity (>= 2.30), nautilus (>= 3.8), policykit-1-gnome, Provides: x-session-manager, gnome-session-flashback Replaces: gnome-session-flashback Conflicts: gnome-session-flashback Description: GNOME Session Manager - Trisquel session The GNOME Session Manager is in charge of starting the core components of the GNOME desktop, and applications that should be launched at login time. It also features a way to save and restore currently running applications. . This package contains the required components for the Trisquel session. EOF # Custom layout cat << EOF > data/panel-default-layout.layout [Toplevel panel] expand=true orientation=bottom size=44 y-bottom=0 [Object menu-bar] object-iid=PanelInternalFactory::MenuButton toplevel-id=panel pack-type=start pack-index=0 [Object home] object-iid=PanelInternalFactory::Launcher @instance-config/location="file:///usr/share/applications/home.desktop" pack-index=10 pack-type=start toplevel-id=panel [Object abrowser] object-iid=PanelInternalFactory::Launcher @instance-config/location="file:///usr/share/applications/browser.desktop" pack-index=20 pack-type=start toplevel-id=panel [Object window-list] object-iid=WnckletFactory::WindowListApplet pack-index=30 pack-type=start toplevel-id=panel [Object notification-area] object-iid=NotificationAreaAppletFactory::NotificationArea pack-index=11 pack-type=end toplevel-id=panel [Object indicators] object-iid=IndicatorAppletFactory::IndicatorApplet toplevel-id=panel pack-type=end pack-index=10 [Object show-desktop] object-iid=WnckletFactory::ShowDesktopApplet pack-index=0 pack-type=end toplevel-id=panel EOF # We don't want to show the gnome-online-accounts stuff yet patch -p1 < $DATA/hide-online-accounts-menu.patch # Do not require alt or alt+supr key modifiers for showing menus on right click patch -p1 < $DATA/no-mouse-modifier.patch changelog "Changed default layout" compile