Note

The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.

Difference between revisions of "Flatpak"

From Funtoo
Jump to navigation Jump to search
m (Minor style changes and typo fixes)
 
(12 intermediate revisions by 7 users not shown)
Line 1: Line 1:
Flatpak is a container-based method of using software. Flatpak software once installed works on any Linux distribution as long as you have the Flatpak framework installed.
Flatpak is a container-based method of using software. Flatpak software once installed works on any Linux distribution as long as you have the Flatpak framework installed.


<h2> Prepping the Kernel </h2>
== Prepping the Kernel ==
Run the following command to enable kernel to generate namespaces for non-root users.
Run the following command to enable kernel to generate namespaces for non-root users.
{{console|body=
{{console|body=
Line 8: Line 8:
}}
}}


<h2> Installing Flatpak </h2>
You will also need to ensure that the {{c|fuse}} module is loaded by default. This does not happen automatically using the official {{c|debian-sources}} kernel. To do this, type:
 
{{console|body=
###i## modprobe fuse
}}
 
To make this permanent, add the following line to {{c|/etc/conf.d/modules}}:
 
{{file|name=/etc/conf.d/modules|body=
modules="fuse"
}}
 
== Installing Flatpak ==
You can now install Flatpak with the following command.
You can now install Flatpak with the following command.
{{console|body=
{{console|body=
# ##i##emerge -v sys-apps/flatpak
# ##i##emerge -v sys-apps/flatpak
}}
}}
<h2> Setting up the Flathub Repos </h2>
 
To add the Flathub repo to Flatpak you just need to run the following command, an important note is most Flatpak commands '''DO NOT''' need root and can be run as a standard user. To run the commands as a standard user, supply the --user option.
== Setting up the Flathub Repos ==
To add the Flathub repo to Flatpak you just need to run the following command, an important note is most Flatpak commands '''DO NOT''' need root and can be run as a standard user. To run the commands as a standard user, supply the --user option.  In several cases you '''MUST''' run commands as a user, such as update.


{{console|body=
{{console|body=
%user% ##i##flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
$ ##i##flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo --user
}}
}}


<h2> Installing Flatpak Software </h2>
== Installing Flatpak Software ==
For Funtoo most of the time you would install the Flatpak software through the terminal like so:
For Funtoo most of the time you would install the Flatpak software through the terminal like so:
{{console|body=
{{console|body=
%user% ##i##flatpak install flathub com.valvesoftware.Steam  
$ ##i##flatpak install flathub com.valvesoftware.Steam
}}
 
*install steam udev rules:
{{console|body=
###i## wget https://raw.githubusercontent.com/ValveSoftware/steam-devices/master/60-steam-input.rules -O /etc/udev/rules.d/60-steam-input.rules
###i## wget https://raw.githubusercontent.com/ValveSoftware/steam-devices/master/60-steam-vr.rules -O /etc/udev/rules.d/60-steam-vr.rules
###i## udevadm control --reload-rules
###i## udevadm trigger
}}
}}
All of the software from the Flathub repo has the terminal commands listed on their individual pages on the Flatpak website. If you install gnome-extra/gnome-software you can have a graphical interface for installing the software locally.
All of the software from the Flathub repo has the terminal commands listed on their individual pages on the Flatpak website. If you install gnome-extra/gnome-software you can have a graphical interface for installing the software locally.
{{console|body=
{{console|body=
Line 30: Line 52:
}}
}}


<h2> Important Notes for Nvidia Driver Users </h2>
== Running Something Installed with Flatpak ==
{{console|body=
$ ##i##flatpak run com.valvesoftware.Steam
}}
 
== Updating Flatpak Software ==
While Flatpak does a good job of installing the latest version of required packages when you manually install them, existing package updates must be triggered manually. 
{{console|body=
$ ##i##flatpak update
}}
 
== Important Notes for Nvidia Driver Users ==
During the installation of applications like Steam through the terminal after first install of Flatpak, Flatpak should detect that you are using the Nvidia drivers and have you select the correct one for it to use from the list. Make sure you select the driver that matches your system's driver. This has not been tested if you are installing software for the first time with gnome-software.
During the installation of applications like Steam through the terminal after first install of Flatpak, Flatpak should detect that you are using the Nvidia drivers and have you select the correct one for it to use from the list. Make sure you select the driver that matches your system's driver. This has not been tested if you are installing software for the first time with gnome-software.



Latest revision as of 04:00, February 17, 2024

Flatpak is a container-based method of using software. Flatpak software once installed works on any Linux distribution as long as you have the Flatpak framework installed.

Prepping the Kernel

Run the following command to enable kernel to generate namespaces for non-root users.

root # echo 1 > /proc/sys/kernel/unprivileged_userns_clone
root # echo 'kernel.unprivileged_userns_clone=1' > /etc/sysctl.d/unprivileged_userns_clone.conf

You will also need to ensure that the fuse module is loaded by default. This does not happen automatically using the official debian-sources kernel. To do this, type:

root # modprobe fuse

To make this permanent, add the following line to /etc/conf.d/modules:

   /etc/conf.d/modules
modules="fuse"

Installing Flatpak

You can now install Flatpak with the following command.

root # emerge -v sys-apps/flatpak

Setting up the Flathub Repos

To add the Flathub repo to Flatpak you just need to run the following command, an important note is most Flatpak commands DO NOT need root and can be run as a standard user. To run the commands as a standard user, supply the --user option. In several cases you MUST run commands as a user, such as update.

user $ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo --user

Installing Flatpak Software

For Funtoo most of the time you would install the Flatpak software through the terminal like so:

user $ flatpak install flathub com.valvesoftware.Steam
  • install steam udev rules:
root # wget https://raw.githubusercontent.com/ValveSoftware/steam-devices/master/60-steam-input.rules -O /etc/udev/rules.d/60-steam-input.rules
root # wget https://raw.githubusercontent.com/ValveSoftware/steam-devices/master/60-steam-vr.rules -O /etc/udev/rules.d/60-steam-vr.rules
root # udevadm control --reload-rules
root # udevadm trigger

All of the software from the Flathub repo has the terminal commands listed on their individual pages on the Flatpak website. If you install gnome-extra/gnome-software you can have a graphical interface for installing the software locally.

root # emerge -av gnome-extra/gnome-software

Running Something Installed with Flatpak

user $ flatpak run com.valvesoftware.Steam

Updating Flatpak Software

While Flatpak does a good job of installing the latest version of required packages when you manually install them, existing package updates must be triggered manually.

user $ flatpak update

Important Notes for Nvidia Driver Users

During the installation of applications like Steam through the terminal after first install of Flatpak, Flatpak should detect that you are using the Nvidia drivers and have you select the correct one for it to use from the list. Make sure you select the driver that matches your system's driver. This has not been tested if you are installing software for the first time with gnome-software.