<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Filip Stanis</title>
    <description>The latest articles on DEV Community by Filip Stanis (@fstanis).</description>
    <link>https://dev.to/fstanis</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F930604%2Fac851a9a-8fe6-4ee1-9518-548971029f3f.jpeg</url>
      <title>DEV Community: Filip Stanis</title>
      <link>https://dev.to/fstanis</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/fstanis"/>
    <language>en</language>
    <item>
      <title>How to install Cinnamon on your Steam Deck</title>
      <dc:creator>Filip Stanis</dc:creator>
      <pubDate>Thu, 22 Sep 2022 10:05:19 +0000</pubDate>
      <link>https://dev.to/fstanis/how-to-install-cinnamon-on-your-steam-deck-1boe</link>
      <guid>https://dev.to/fstanis/how-to-install-cinnamon-on-your-steam-deck-1boe</guid>
      <description>&lt;p&gt;I was really excited when I learned that Valve's Steam Deck has a &lt;a href="https://help.steampowered.com/en/faqs/view/671A-4453-E8D2-323C"&gt;"Desktop Mode"&lt;/a&gt;. This means that I can easily dock it and use it as it's a fully fledged desktop computer wherever I go.&lt;/p&gt;

&lt;p&gt;By default, it's running Arch Linux and KDE Plasma. As I'm not super used to KDE, I decided to try installing Cinnamon desktop instead. The process wasn't as straightforward at time of writing so I'm sharing what I went through, in case it's useful for others.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: disable read-only and install dependencies
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo steamos-readonly disable
sudo pacman-key --populate archlinux
sudo pacman -Sy archlinux-keyring
sudo pacman -Syu
sudo pacman -S base-devel linux-api-headers glibc binutils gcc git libarchive
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 2: install Yay (optional)
&lt;/h2&gt;

&lt;p&gt;Some Cinnamon packages require &lt;a href="https://github.com/Jguer/yay"&gt;Yay&lt;/a&gt;. This step is optional, but Yay will probably be useful down the line.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cd /opt
sudo git clone https://aur.archlinux.org/yay.git
sudo sudo chown -R deck:deck ./yay
cd yay
makepkg -si
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 3: install Cinnamon
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo pacman -S cinnamon gnome-terminal
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 4: replace Plasma with Cinnamon
&lt;/h2&gt;

&lt;p&gt;Steam Deck has a series of scripts that allow for switching between "Desktop Mode" and "Gaming Mode". As to not disrupt these flows, I'm just replacing the binary being launched from Plasma to Cinnamon's in &lt;code&gt;/usr/bin/startplasma-steamos-oneshot&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo cp /usr/bin/startplasma-steamos-oneshot /usr/bin/startplasma-steamos-oneshot.old
sudo sed -i 's#CHAINED_SESSION="/usr/bin/startplasma-x11"#CHAINED_SESSION="/usr/bin/cinnamon-session-cinnamon"#' /usr/bin/startplasma-steamos-oneshot
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 5: replace desktop shortcut
&lt;/h2&gt;

&lt;p&gt;Steam Deck has a useful "Return to Gaming Mode" shortcut on the desktop that can be used to quickly switch back from Desktop Mode. This is merely a quick way to log off, but Cinnamon uses a different mechanism to achieve it, so we can patch that up too.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cp ~/Desktop/Return.desktop ~/Desktop/Return.desktop.old
sed -i -E 's/^Exec=.*/Exec=cinnamon-session-quit --logout --no-prompt/' ~/Desktop/Return.desktop
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 6: remove KDE Plasma (optional)
&lt;/h2&gt;

&lt;p&gt;After installing Cinnamon and verifying it works, I decided to remove most of Plasma to free up some space. Make sure you reboot and verify everything works fine before this step!&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;pacman -R plasma-browser-integration plasma-desktop plasma-disks plasma-firewall plasma-integration plasma-nm plasma-pa plasma-systemmonitor plasma-thunderbolt plasma-vault plasma-workspace plasma-workspace-wallpapers plasma-wayland-session powerdevil systemsettings plasma-meta kdeplasma-addons kgamma5 khotkeys kinfocenter sddm-kcm dolphin kwrite oxygen milou kwrited kwayland-server kwin kwayland-server kwallet-pam kwayland-integration ksystemstats  ksshaskpass kscreenlocker kscreen kmenuedit kmenuedit kde-gtk-config kde-cli-tools kactivitymanagerd kuserfeedback krunner kdesu  discover breeze breeze-icons kdecoration
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
      <category>steamdeck</category>
      <category>archlinux</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
