dotfiles/docs/instructions.html

1253 lines
54 KiB
HTML

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Instructions</title>
<meta name="generator" content="Org Mode" />
<style>
#content { max-width: 60em; margin: auto; }
.title { text-align: center;
margin-bottom: .2em; }
.subtitle { text-align: center;
font-size: medium;
font-weight: bold;
margin-top:0; }
.todo { font-family: monospace; color: red; }
.done { font-family: monospace; color: green; }
.priority { font-family: monospace; color: orange; }
.tag { background-color: #eee; font-family: monospace;
padding: 2px; font-size: 80%; font-weight: normal; }
.timestamp { color: #bebebe; }
.timestamp-kwd { color: #5f9ea0; }
.org-right { margin-left: auto; margin-right: 0px; text-align: right; }
.org-left { margin-left: 0px; margin-right: auto; text-align: left; }
.org-center { margin-left: auto; margin-right: auto; text-align: center; }
.underline { text-decoration: underline; }
#postamble p, #preamble p { font-size: 90%; margin: .2em; }
p.verse { margin-left: 3%; }
pre {
border: 1px solid #e6e6e6;
border-radius: 3px;
background-color: #f2f2f2;
padding: 8pt;
font-family: monospace;
overflow: auto;
margin: 1.2em;
}
pre.src {
position: relative;
overflow: auto;
}
pre.src:before {
display: none;
position: absolute;
top: -8px;
right: 12px;
padding: 3px;
color: #555;
background-color: #f2f2f299;
}
pre.src:hover:before { display: inline; margin-top: 14px;}
/* Languages per Org manual */
pre.src-asymptote:before { content: 'Asymptote'; }
pre.src-awk:before { content: 'Awk'; }
pre.src-authinfo::before { content: 'Authinfo'; }
pre.src-C:before { content: 'C'; }
/* pre.src-C++ doesn't work in CSS */
pre.src-clojure:before { content: 'Clojure'; }
pre.src-css:before { content: 'CSS'; }
pre.src-D:before { content: 'D'; }
pre.src-ditaa:before { content: 'ditaa'; }
pre.src-dot:before { content: 'Graphviz'; }
pre.src-calc:before { content: 'Emacs Calc'; }
pre.src-emacs-lisp:before { content: 'Emacs Lisp'; }
pre.src-fortran:before { content: 'Fortran'; }
pre.src-gnuplot:before { content: 'gnuplot'; }
pre.src-haskell:before { content: 'Haskell'; }
pre.src-hledger:before { content: 'hledger'; }
pre.src-java:before { content: 'Java'; }
pre.src-js:before { content: 'Javascript'; }
pre.src-latex:before { content: 'LaTeX'; }
pre.src-ledger:before { content: 'Ledger'; }
pre.src-lisp:before { content: 'Lisp'; }
pre.src-lilypond:before { content: 'Lilypond'; }
pre.src-lua:before { content: 'Lua'; }
pre.src-matlab:before { content: 'MATLAB'; }
pre.src-mscgen:before { content: 'Mscgen'; }
pre.src-ocaml:before { content: 'Objective Caml'; }
pre.src-octave:before { content: 'Octave'; }
pre.src-org:before { content: 'Org mode'; }
pre.src-oz:before { content: 'OZ'; }
pre.src-plantuml:before { content: 'Plantuml'; }
pre.src-processing:before { content: 'Processing.js'; }
pre.src-python:before { content: 'Python'; }
pre.src-R:before { content: 'R'; }
pre.src-ruby:before { content: 'Ruby'; }
pre.src-sass:before { content: 'Sass'; }
pre.src-scheme:before { content: 'Scheme'; }
pre.src-screen:before { content: 'Gnu Screen'; }
pre.src-sed:before { content: 'Sed'; }
pre.src-sh:before { content: 'shell'; }
pre.src-sql:before { content: 'SQL'; }
pre.src-sqlite:before { content: 'SQLite'; }
/* additional languages in org.el's org-babel-load-languages alist */
pre.src-forth:before { content: 'Forth'; }
pre.src-io:before { content: 'IO'; }
pre.src-J:before { content: 'J'; }
pre.src-makefile:before { content: 'Makefile'; }
pre.src-maxima:before { content: 'Maxima'; }
pre.src-perl:before { content: 'Perl'; }
pre.src-picolisp:before { content: 'Pico Lisp'; }
pre.src-scala:before { content: 'Scala'; }
pre.src-shell:before { content: 'Shell Script'; }
pre.src-ebnf2ps:before { content: 'ebfn2ps'; }
/* additional language identifiers per "defun org-babel-execute"
in ob-*.el */
pre.src-cpp:before { content: 'C++'; }
pre.src-abc:before { content: 'ABC'; }
pre.src-coq:before { content: 'Coq'; }
pre.src-groovy:before { content: 'Groovy'; }
/* additional language identifiers from org-babel-shell-names in
ob-shell.el: ob-shell is the only babel language using a lambda to put
the execution function name together. */
pre.src-bash:before { content: 'bash'; }
pre.src-csh:before { content: 'csh'; }
pre.src-ash:before { content: 'ash'; }
pre.src-dash:before { content: 'dash'; }
pre.src-ksh:before { content: 'ksh'; }
pre.src-mksh:before { content: 'mksh'; }
pre.src-posh:before { content: 'posh'; }
/* Additional Emacs modes also supported by the LaTeX listings package */
pre.src-ada:before { content: 'Ada'; }
pre.src-asm:before { content: 'Assembler'; }
pre.src-caml:before { content: 'Caml'; }
pre.src-delphi:before { content: 'Delphi'; }
pre.src-html:before { content: 'HTML'; }
pre.src-idl:before { content: 'IDL'; }
pre.src-mercury:before { content: 'Mercury'; }
pre.src-metapost:before { content: 'MetaPost'; }
pre.src-modula-2:before { content: 'Modula-2'; }
pre.src-pascal:before { content: 'Pascal'; }
pre.src-ps:before { content: 'PostScript'; }
pre.src-prolog:before { content: 'Prolog'; }
pre.src-simula:before { content: 'Simula'; }
pre.src-tcl:before { content: 'tcl'; }
pre.src-tex:before { content: 'TeX'; }
pre.src-plain-tex:before { content: 'Plain TeX'; }
pre.src-verilog:before { content: 'Verilog'; }
pre.src-vhdl:before { content: 'VHDL'; }
pre.src-xml:before { content: 'XML'; }
pre.src-nxml:before { content: 'XML'; }
/* add a generic configuration mode; LaTeX export needs an additional
(add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */
pre.src-conf:before { content: 'Configuration File'; }
table { border-collapse:collapse; }
caption.t-above { caption-side: top; }
caption.t-bottom { caption-side: bottom; }
td, th { vertical-align:top; }
th.org-right { text-align: center; }
th.org-left { text-align: center; }
th.org-center { text-align: center; }
td.org-right { text-align: right; }
td.org-left { text-align: left; }
td.org-center { text-align: center; }
dt { font-weight: bold; }
.footpara { display: inline; }
.footdef { margin-bottom: 1em; }
.figure { padding: 1em; }
.figure p { text-align: center; }
.equation-container {
display: table;
text-align: center;
width: 100%;
}
.equation {
vertical-align: middle;
}
.equation-label {
display: table-cell;
text-align: right;
vertical-align: middle;
}
.inlinetask {
padding: 10px;
border: 2px solid gray;
margin: 10px;
background: #ffffcc;
}
#org-div-home-and-up
{ text-align: right; font-size: 70%; white-space: nowrap; }
textarea { overflow-x: auto; }
.linenr { font-size: smaller }
.code-highlighted { background-color: #ffff00; }
.org-info-js_info-navigation { border-style: none; }
#org-info-js_console-label
{ font-size: 10px; font-weight: bold; white-space: nowrap; }
.org-info-js_search-highlight
{ background-color: #ffff00; color: #000000; font-weight: bold; }
.org-svg { }
</style>
<script>
// @license magnet:?xt=urn:btih:1f739d935676111cfff4b4693e3816e664797050&amp;dn=gpl-3.0.txt GPL-v3-or-Later
function CodeHighlightOn(elem, id)
{
var target = document.getElementById(id);
if(null != target) {
elem.classList.add("code-highlighted");
target.classList.add("code-highlighted");
}
}
function CodeHighlightOff(elem, id)
{
var target = document.getElementById(id);
if(null != target) {
elem.classList.remove("code-highlighted");
target.classList.remove("code-highlighted");
}
}
// @license-end
</script>
</head>
<body>
<div id="content" class="content">
<h1 class="title">Instructions</h1>
<div id="table-of-contents" role="doc-toc">
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
<li><a href="#orgf5b04ea">0.1. information&#xa0;&#xa0;&#xa0;<span class="tag"><span class="info">info</span></span></a></li>
<li><a href="#org6746696">0.2. installing fedora minimal with btrfs snapshots (snapper)</a>
<ul>
<li><a href="#org1905dd5">0.2.1. verifying the iso file</a></li>
<li><a href="#org44c36de">0.2.2. installing fedora and setting up btrfs with snapshots</a></li>
</ul>
</li>
<li><a href="#org122c2ad">0.3. how to make new user and add to wheel</a></li>
<li><a href="#org4e3a27e">0.4. prerequisites</a></li>
<li><a href="#orga03a007">0.5. installing dotfiles</a>
<ul>
<li><a href="#org635c0e1">0.5.1. how to unstow dotfiles</a></li>
</ul>
</li>
<li><a href="#org29accc5">0.6. setting up rpmfusion</a></li>
<li><a href="#org49543eb">0.7. installing dnf packages</a></li>
<li><a href="#org1ec370c">0.8. installing swayfx (window manager)</a></li>
<li><a href="#org508a697">0.9. configuring sudoers</a></li>
<li><a href="#org9e6828b">0.10. Make zsh the default shell for the user.</a></li>
<li><a href="#orgec5650f">0.11. librewolf (browser)</a>
<ul>
<li><a href="#org6e98afc">0.11.1. plugins, etc</a></li>
</ul>
</li>
<li><a href="#orga17274f">0.12. doom emacs</a></li>
<li><a href="#orgf1fca3a">0.13. lf (file manager)</a></li>
<li><a href="#orgc78aa33">0.14. interception tools (keyboard input mappings)</a>
<ul>
<li><a href="#orga76c33d">0.14.1. installing the configuration</a></li>
</ul>
</li>
<li><a href="#org271ec20">0.15. sway notifications</a></li>
<li><a href="#org248936a">0.16. autotiling in sway (optional)</a></li>
<li><a href="#org71866cc">0.17. sworkstyle (workspace icons) (optional)</a>
<ul>
<li><a href="#orgd797740">0.17.1. install icon fonts (Nerd Fonts)</a></li>
</ul>
</li>
<li><a href="#orge9c1d50">0.18. uxn</a></li>
<li><a href="#org418368d">0.19. sc-im (terminal spreadsheet)</a></li>
<li><a href="#org638197a">0.20. nsxiv (image viewer)</a></li>
<li><a href="#org9ca60f2">0.21. pip packages</a>
<ul>
<li><a href="#org306e18e">0.21.1. keepmenu (dmenu keepassxc client)</a></li>
<li><a href="#org58e590e">0.21.2. pulsemixer (pulseaudio controller)</a></li>
<li><a href="#org976b6a4">0.21.3. termdown (terminal timer/stopwatch)</a></li>
</ul>
</li>
<li><a href="#org3575ab5">0.22. go packages</a>
<ul>
<li><a href="#orgf22b765">0.22.1. pup</a></li>
</ul>
</li>
<li><a href="#orgbaf6af5">0.23. packages from source/binaries</a>
<ul>
<li><a href="#org7ee84ff">0.23.1. simple-mtpfs (for mounting usb)</a></li>
<li><a href="#orgdcddb25">0.23.2. mpvpaper</a></li>
<li><a href="#org76605ae">0.23.3. 7-zip</a></li>
</ul>
</li>
<li><a href="#org4434d62">0.24. AppImages</a>
<ul>
<li><a href="#org22d5d3d">0.24.1. syncplay</a></li>
</ul>
</li>
<li><a href="#orgae0391e">0.25. installing cargo</a></li>
<li><a href="#org5f65c90">0.26. setting up flatpak</a></li>
<li><a href="#orgff587a6">0.27. setting up virtualbox</a></li>
<li><a href="#org2319239">0.28. flatpak packages</a>
<ul>
<li><a href="#org2a993df">0.28.1. flatseal</a></li>
<li><a href="#org0138bde">0.28.2. Unity</a></li>
<li><a href="#org421406a">0.28.3. Foliate (Epub reader)</a></li>
<li><a href="#org0f4fa93">0.28.4. bottles and dependencies</a></li>
<li><a href="#org2cb0326">0.28.5. steam</a></li>
<li><a href="#orgccfdf33">0.28.6. rpsc3</a></li>
<li><a href="#org8a30aff">0.28.7. cemu</a></li>
<li><a href="#org46f0d90">0.28.8. discord</a></li>
<li><a href="#orga81015f">0.28.9. spotify</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#orgf78f0cb">1. fixes</a>
<ul>
<li><a href="#orgb0cba45">1.1. crashes with wayland under amd gpus</a></li>
</ul>
</li>
<li><a href="#orgec1d0ba">2. todos</a>
<ul>
<li><a href="#orgca5bc32">2.1. <span class="todo TODO">TODO</span> remove Virtual Box</a></li>
<li><a href="#orgfc6805d">2.2. <span class="todo TODO">TODO</span> remove autotiling</a></li>
<li><a href="#org7cc9bc2">2.3. <span class="todo TODO">TODO</span> write dependencies and programs to separate files</a></li>
<li><a href="#org6fe8d7a">2.4. add packages / other</a>
<ul>
<li><a href="#orgfaa4d5a">2.4.1. installing bubblejail (WIP)</a></li>
</ul>
</li>
<li><a href="#org58e81df">2.5. setting up termux (WIP)</a></li>
<li><a href="#org85f5fdd">2.6. ryujinx (WIP)</a></li>
<li><a href="#orgf5a61ed">2.7. setup flatpak env variable for theme</a></li>
<li><a href="#org53128cf">2.8. wlrobs</a></li>
</ul>
</div>
</div>
<div id="outline-container-orgf5b04ea" class="outline-3">
<h3 id="orgf5b04ea"><span class="section-number-3">0.1.</span> information&#xa0;&#xa0;&#xa0;<span class="tag"><span class="info">info</span></span></h3>
<div class="outline-text-3" id="text-0-1">
<p>
This org document is a list of instructions on how to install the whole setup of my personal system, including installation of standalone programs.
</p>
</div>
</div>
<div id="outline-container-org6746696" class="outline-3">
<h3 id="org6746696"><span class="section-number-3">0.2.</span> installing fedora minimal with btrfs snapshots (snapper)</h3>
<div class="outline-text-3" id="text-0-2">
<p>
this sections assumes that you know how to use sway (window manager), neovim (text editor), basic terminal shell commands, burn an iso to disk, as well as using the anaconda installer.
</p>
<p>
get the os image (Fedora Everything) from here <a href="https://alt.fedoraproject.org/en/">https://alt.fedoraproject.org/en/</a> and burn it to your usb/other.
</p>
</div>
<div id="outline-container-org1905dd5" class="outline-4">
<h4 id="org1905dd5"><span class="section-number-4">0.2.1.</span> verifying the iso file</h4>
<div class="outline-text-4" id="text-0-2-1">
<ol class="org-ol">
<li>Download the checksum file (from <a href="https://alt.fedoraproject.org/en/">https://alt.fedoraproject.org/en/</a>) into the same directory as the image you downloaded.</li>
<li>Import Fedora&rsquo;s GPG key(s)</li>
</ol>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">curl</span> -O https://fedoraproject.org/fedora.gpg
</pre>
</div>
<ol class="org-ol">
<li>Verify the CHECKSUM file is valid</li>
</ol>
<div class="org-src-container">
<pre class="src src-sh">gpgv --keyring ./fedora.gpg *-CHECKSUM
</pre>
</div>
<ol class="org-ol">
<li>Verify the checksum matches</li>
</ol>
<div class="org-src-container">
<pre class="src src-sh">sha256sum -c *-CHECKSUM
</pre>
</div>
</div>
</div>
<div id="outline-container-org44c36de" class="outline-4">
<h4 id="org44c36de"><span class="section-number-4">0.2.2.</span> installing fedora and setting up btrfs with snapshots</h4>
<div class="outline-text-4" id="text-0-2-2">
<p>
differences/notes before continuing with the installation:
</p>
<ol class="org-ol">
<li>some dependencies aren&rsquo;t available with &rsquo;fedora custom operating system&rsquo;. before installing snapper install these packages:</li>
</ol>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> dnf install neovim sway firefox locate <span style="color: #f0c674;">git</span> bzip2
</pre>
</div>
<ul class="org-ul">
<li><code>neovim</code>: a text editor to edit files</li>
<li><code>firefox</code>: a browser to follow along guide</li>
<li><code>locate</code>, <code>git</code>, <code>bzip2</code>: missing dependencies not included in the guide.</li>
<li>software selection will be <code>fedora custom operating system</code></li>
</ul>
<p>
boot your fedora installer media and follow this guide, make sure to boot with EUFI mode:
<a href="https://sysguides.com/install-fedora-38-with-snapshot-and-rollback-support/">https://sysguides.com/install-fedora-38-with-snapshot-and-rollback-support/</a>
or for full disk encryption
<a href="https://sysguides.com/install-fedora-38-with-full-disk-encryption-snapshot-and-rollback-support/">https://sysguides.com/install-fedora-38-with-full-disk-encryption-snapshot-and-rollback-support/</a>
</p>
</div>
</div>
</div>
<div id="outline-container-org122c2ad" class="outline-3">
<h3 id="org122c2ad"><span class="section-number-3">0.3.</span> how to make new user and add to wheel</h3>
<div class="outline-text-3" id="text-0-3">
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">make</span><span style="color: #5a5b5a;"> a user and add to the wheel group</span>
useradd -m -g wheel user_name
<span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">set a password</span>
passwd user_name
</pre>
</div>
</div>
</div>
<div id="outline-container-org4e3a27e" class="outline-3">
<h3 id="org4e3a27e"><span class="section-number-3">0.4.</span> prerequisites</h3>
<div class="outline-text-3" id="text-0-4">
<p>
for building/installing packages, also some dependencies for doomemacs, and zsh.
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> dnf install <span style="color: #f0c674;">curl</span> ca-certificates <span style="color: #f0c674;">make</span> automake gcc gcc-c++ kernel-devel <span style="color: #f0c674;">git</span> util-linux-user zsh ntpsec dnf-plugins-core golang flatpak cmake libevdev-devel systemd-devel yaml-cpp-devel boost-devel ripgrep fd-find ShellCheck tar pip npm
</pre>
</div>
</div>
</div>
<div id="outline-container-orga03a007" class="outline-3">
<h3 id="orga03a007"><span class="section-number-3">0.5.</span> installing dotfiles</h3>
<div class="outline-text-3" id="text-0-5">
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">getting dotfiles</span>
<span style="color: #f0c674;">git</span> clone https://gitea.bubbletea.dev/cho/dotfiles ~/.dots
<span style="color: #f0c674;">cp</span> -rv ~/.dots/home/default/.* ~/
<span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">or using stow</span>
<span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">make</span><span style="color: #5a5b5a;"> sure you </span><span style="color: #5a5b5a;">make</span><span style="color: #5a5b5a;"> directories you don't want as symlinks</span>
<span style="color: #f0c674;">mkdir</span> -p ~/.local/share/applications
<span style="color: #f0c674;">mkdir</span> -p ~/.local/bin
<span style="color: #f0c674;">mkdir</span> -p ~/.config
<span style="color: #f0c674;">mkdir</span> -p ~/.config/shell
<span style="color: #f0c674;">mkdir</span> -p ~/.config/mpd
<span style="color: #f0c674;">mkdir</span> -p ~/.config/zsh
<span style="color: #f0c674;">mkdir</span> -p ~/.config/newsboat
<span style="color: #f0c674;">mkdir</span> -p ~/.config/nvim
<span style="color: #f0c674;">cd</span> ~/.dots/home/ &amp;&amp; stow default --target=$<span style="color: #cc6666;">HOME</span>/
</pre>
</div>
</div>
<div id="outline-container-org635c0e1" class="outline-4">
<h4 id="org635c0e1"><span class="section-number-4">0.5.1.</span> how to unstow dotfiles</h4>
<div class="outline-text-4" id="text-0-5-1">
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">cd</span> ~/.dots/home/ &amp;&amp; stow -D default --target=$<span style="color: #cc6666;">HOME</span>/
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-org29accc5" class="outline-3">
<h3 id="org29accc5"><span class="section-number-3">0.6.</span> setting up rpmfusion</h3>
<div class="outline-text-3" id="text-0-6">
<p>
from <a href="https://rpmfusion.org/Configuration">https://rpmfusion.org/Configuration</a> and <a href="https://rpmfusion.org/Howto/Multimedia">https://rpmfusion.org/Howto/Multimedia</a>
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">rpmfusion</span>
<span style="color: #f0c674;">sudo</span> dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$<span style="color: #b294bb;">(</span>rpm -E %fedora<span style="color: #b294bb;">)</span>.noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$<span style="color: #b294bb;">(</span>rpm -E %fedora<span style="color: #b294bb;">)</span>.noarch.rpm
<span style="color: #f0c674;">sudo</span> dnf groupupdate core
<span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">multimedia</span>
<span style="color: #f0c674;">sudo</span> dnf swap ffmpeg-free ffmpeg --allowerasing
<span style="color: #f0c674;">sudo</span> dnf groupupdate multimedia --setop=<span style="color: #b5bd68;">"install_weak_deps=False"</span> --exclude=PackageKit-gstreamer-plugin
<span style="color: #f0c674;">sudo</span> dnf groupupdate sound-and-video
<span style="color: #5a5b5a;">#</span><span style="color: #5a5b5a;">amd</span>
<span style="color: #f0c674;">sudo</span> dnf swap mesa-va-drivers mesa-va-drivers-freeworld
<span style="color: #f0c674;">sudo</span> dnf swap mesa-vdpau-drivers mesa-vdpau-drivers-freeworld
<span style="color: #5a5b5a;">#</span><span style="color: #5a5b5a;">dvd</span>
<span style="color: #f0c674;">sudo</span> dnf install rpmfusion-free-release-tainted
<span style="color: #f0c674;">sudo</span> dnf install libdvdcss
<span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">non-free firmware</span>
<span style="color: #f0c674;">sudo</span> dnf install rpmfusion-nonfree-release-tainted
<span style="color: #f0c674;">sudo</span> dnf --repo=rpmfusion-nonfree-tainted install <span style="color: #b5bd68;">"*-firmware"</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org49543eb" class="outline-3">
<h3 id="org49543eb"><span class="section-number-3">0.7.</span> installing dnf packages</h3>
<div class="outline-text-3" id="text-0-7">
<p>
this will install programs, as well as (99% of) dependencies of shell scripts and configuration included within lf (file manager)
the other dependency not included in packages.txt is `pup` (included in a section below)
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> dnf install -y $<span style="color: #b294bb;">(</span><span style="color: #f0c674;">cat</span> ~/.dots/packages.txt<span style="color: #b294bb;">)</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org1ec370c" class="outline-3">
<h3 id="org1ec370c"><span class="section-number-3">0.8.</span> installing swayfx (window manager)</h3>
<div class="outline-text-3" id="text-0-8">
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> dnf copr enable swayfx/swayfx
<span style="color: #f0c674;">sudo</span> dnf install
</pre>
</div>
</div>
</div>
<div id="outline-container-org508a697" class="outline-3">
<h3 id="org508a697"><span class="section-number-3">0.9.</span> configuring sudoers</h3>
<div class="outline-text-3" id="text-0-9">
<p>
Allow wheel users to sudo with password and allow several system commands
(like `shutdown` to run without password).
</p>
<div class="org-src-container">
<pre class="src src-shell"><span style="color: #f0c674;">echo</span> <span style="color: #b5bd68;">"%wheel ALL=(ALL:ALL) ALL"</span> &gt;/etc/sudoers.d/00-wheel-can-sudo
<span style="color: #f0c674;">echo</span> <span style="color: #b5bd68;">"%wheel ALL=(ALL:ALL) NOPASSWD: /usr/bin/shutdown,/usr/bin/reboot,/usr/bin/systemctl suspend,/usr/bin/wifi-menu,/usr/bin/mount,/usr/bin/umount,/usr/bin/dnf update,/usr/bin/dnf update -y,/usr/bin/dnf upgrade,/usr/bin/dnf upgrade,/usr/bin/dnf makecache,/usr/bin/dnf makecache -y,/usr/bin/loadkeys"</span> &gt;/etc/sudoers.d/01-cmds-without-password
<span style="color: #f0c674;">echo</span> <span style="color: #b5bd68;">"Defaults editor=/usr/bin/nvim"</span> &gt;/etc/sudoers.d/02-visudo-editor
</pre>
</div>
</div>
</div>
<div id="outline-container-org9e6828b" class="outline-3">
<h3 id="org9e6828b"><span class="section-number-3">0.10.</span> Make zsh the default shell for the user.</h3>
<div class="outline-text-3" id="text-0-10">
<div class="org-src-container">
<pre class="src src-shell"><span style="color: #cc6666;">name</span>=$<span style="color: #cc6666;">USER</span>
chsh -s /bin/zsh <span style="color: #b5bd68;">"</span><span style="color: #de935f;">$</span><span style="color: #cc6666;">name</span><span style="color: #b5bd68;">"</span> &gt;/dev/null <span style="color: #de935f; font-weight: bold;">2</span>&gt;&amp;<span style="color: #de935f; font-weight: bold;">1</span>
<span style="color: #f0c674;">sudo</span> -u <span style="color: #b5bd68;">"</span><span style="color: #de935f;">$</span><span style="color: #cc6666;">name</span><span style="color: #b5bd68;">"</span> <span style="color: #f0c674;">mkdir</span> -p <span style="color: #b5bd68;">"/home/</span><span style="color: #de935f;">$</span><span style="color: #cc6666;">name</span><span style="color: #b5bd68;">/.cache/zsh/"</span>
<span style="color: #f0c674;">sudo</span> -u <span style="color: #b5bd68;">"</span><span style="color: #de935f;">$</span><span style="color: #cc6666;">name</span><span style="color: #b5bd68;">"</span> <span style="color: #f0c674;">mkdir</span> -p <span style="color: #b5bd68;">"/home/</span><span style="color: #de935f;">$</span><span style="color: #cc6666;">name</span><span style="color: #b5bd68;">/.config/abook/"</span>
<span style="color: #f0c674;">sudo</span> -u <span style="color: #b5bd68;">"</span><span style="color: #de935f;">$</span><span style="color: #cc6666;">name</span><span style="color: #b5bd68;">"</span> <span style="color: #f0c674;">mkdir</span> -p <span style="color: #b5bd68;">"/home/</span><span style="color: #de935f;">$</span><span style="color: #cc6666;">name</span><span style="color: #b5bd68;">/.config/mpd/playlists/"</span>
</pre>
</div>
<p>
at this point, you should logout and login again to set the variables.
</p>
</div>
</div>
<div id="outline-container-orgec5650f" class="outline-3">
<h3 id="orgec5650f"><span class="section-number-3">0.11.</span> librewolf (browser)</h3>
<div class="outline-text-3" id="text-0-11">
<p>
from <a href="https://librewolf.net/installation/fedora/">https://librewolf.net/installation/fedora/</a>
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> dnf config-manager --add-repo https://rpm.librewolf.net/librewolf-repo.repo
<span style="color: #f0c674;">sudo</span> dnf install librewolf
</pre>
</div>
</div>
<div id="outline-container-org6e98afc" class="outline-4">
<h4 id="org6e98afc"><span class="section-number-4">0.11.1.</span> plugins, etc</h4>
<div class="outline-text-4" id="text-0-11-1">
<p>
<a href="https://github.com/ranmaru22/firefox-vertical-tabs">https://github.com/ranmaru22/firefox-vertical-tabs</a>
<a href="https://addons.mozilla.org/en-US/firefox/addon/multi-account-containers/">https://addons.mozilla.org/en-US/firefox/addon/multi-account-containers/</a>
<a href="https://addons.mozilla.org/en-US/firefox/addon/nicothin-dark-theme/">https://addons.mozilla.org/en-US/firefox/addon/nicothin-dark-theme/</a>
<a href="https://addons.mozilla.org/en-US/firefox/addon/tomorrow-theme-night">https://addons.mozilla.org/en-US/firefox/addon/tomorrow-theme-night</a>
<a href="https://support.mozilla.org/en-US/kb/compact-mode-workaround-firefox">https://support.mozilla.org/en-US/kb/compact-mode-workaround-firefox</a>
</p>
</div>
</div>
</div>
<div id="outline-container-orga17274f" class="outline-3">
<h3 id="orga17274f"><span class="section-number-3">0.12.</span> doom emacs</h3>
<div class="outline-text-3" id="text-0-12">
<p>
first we need to install marked for markdown support
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> npm install -g marked
</pre>
</div>
<p>
then install emacs
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> dnf install emacs
</pre>
</div>
<p>
alternatively build emacs with native compilation and pgtk for better compatibility with wayland
</p>
<div class="org-src-container">
<pre class="src src-sh">
<span style="color: #5a5b5a;">## </span><span style="color: #5a5b5a;">clone the emacs repository</span>
<span style="color: #f0c674;">git</span> clone git://git.savannah.gnu.org/emacs.git
<span style="color: #5a5b5a;">## </span><span style="color: #5a5b5a;">install dependencies</span>
<span style="color: #f0c674;">sudo</span> dnf install gcc atk-devel cairo-devel freetype-devel fontconfig-devel dbus-devel giflib-devel glibc-devel libgccjit-devel libpng-devel libjpeg-turbo-devel libjpeg-turbo libtiff-devel libX11-devel libXau-devel libXdmcp-devel libXrender-devel libXt-devel libXpm-devel ncurses-devel xorg-x11-proto-devel zlib-devel gnutls-devel librsvg2-devel m17n-lib-devel libotf-devel libselinux-devel alsa-lib-devel gpm-devel liblockfile-devel libxml2-devel autoconf bzip2 cairo texinfo gzip desktop-file-utils libacl-devel harfbuzz-devel jansson-devel systemd-devel lcms2-devel systemd-rpm-macros libtree-sitter-devel gtk3-devel webkit2gtk3-devel gnupg2 sysprof-devel
<span style="color: #5a5b5a;">## </span><span style="color: #5a5b5a;">build emacs 29.1</span>
<span style="color: #f0c674;">cd</span> emacs
<span style="color: #f0c674;">git</span> checkout emacs-29.1.90
./autogen.sh
./configure --with-dbus --with-gif --with-jpeg --with-png --with-rsvg <span style="color: #b5bd68;">\</span>
--with-tiff --with-xft --with-xpm --with-gpm=no <span style="color: #b5bd68;">\</span>
--with-xwidgets --with-modules --with-harfbuzz --with-cairo --with-json <span style="color: #b5bd68;">\</span>
--with-tree-sitter --with-pgtk --with-native-compilation
<span style="color: #f0c674;">make</span> -j$<span style="color: #b294bb;">(</span>nproc<span style="color: #b294bb;">)</span>
<span style="color: #f0c674;">sudo</span> <span style="color: #f0c674;">make</span> install
</pre>
</div>
<p>
install doom emacs:
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">git</span> clone https://github.com/doomemacs/doomemacs ~/.emacs.d
~/.emacs.d/bin/doom install
</pre>
</div>
</div>
</div>
<div id="outline-container-orgf1fca3a" class="outline-3">
<h3 id="orgf1fca3a"><span class="section-number-3">0.13.</span> lf (file manager)</h3>
<div class="outline-text-3" id="text-0-13">
<p>
this fork of lf allows for sixel graphics, which allows you to see images in terminals that supports sixel
</p>
<p>
from <a href="https://github.com/horriblename/lf#installation">https://github.com/horriblename/lf#installation</a>
</p>
<div class="org-src-container">
<pre class="src src-sh">env <span style="color: #cc6666;">CGO_ENABLED</span>=<span style="color: #de935f; font-weight: bold;">0</span> go install -ldflags=<span style="color: #b5bd68;">"-s -w"</span> github.com/horriblename/lf@latest
<span style="color: #f0c674;">mkdir</span> -p $<span style="color: #cc6666;">HOME</span>/.cache/lf
</pre>
</div>
</div>
</div>
<div id="outline-container-orgc78aa33" class="outline-3">
<h3 id="orgc78aa33"><span class="section-number-3">0.14.</span> interception tools (keyboard input mappings)</h3>
<div class="outline-text-3" id="text-0-14">
<p>
change caps lock to escape (when pressed) and mod (when held down)
</p>
<p>
INSTALL FROM SOURCE
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">git</span> clone https://gitlab.com/interception/linux/tools.git interception-tools
<span style="color: #f0c674;">cd</span> interception-tools
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
<span style="color: #f0c674;">cd</span> build
<span style="color: #f0c674;">sudo</span> <span style="color: #f0c674;">make</span> install
</pre>
</div>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">git</span> clone https://gitlab.com/interception/linux/plugins/dual-function-keys.git
<span style="color: #f0c674;">cd</span> dual-function-keys
<span style="color: #f0c674;">make</span> &amp;&amp; <span style="color: #f0c674;">sudo</span> <span style="color: #f0c674;">make</span> install
</pre>
</div>
<p>
it&rsquo;s a good idea to install these as well, if anything doesn&rsquo;t compile.
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> dnf groupinstall <span style="color: #b5bd68;">"Development Tools"</span> <span style="color: #b5bd68;">"Development Libraries"</span>
</pre>
</div>
</div>
<div id="outline-container-orga76c33d" class="outline-4">
<h4 id="orga76c33d"><span class="section-number-4">0.14.1.</span> installing the configuration</h4>
<div class="outline-text-4" id="text-0-14-1">
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> <span style="color: #f0c674;">cp</span> -rv ~/.dots/etc/interception /etc/
<span style="color: #f0c674;">sudo</span> <span style="color: #f0c674;">cp</span> ~/.dots/etc/systemd/system/udevmon.service /etc/systemd/system/
<span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">enable</span>
<span style="color: #f0c674;">sudo</span> systemctl enable udevmon.service
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-org271ec20" class="outline-3">
<h3 id="org271ec20"><span class="section-number-3">0.15.</span> sway notifications</h3>
<div class="outline-text-3" id="text-0-15">
<p>
from <a href="https://github.com/ErikReider/SwayNotificationCenter#fedora">https://github.com/ErikReider/SwayNotificationCenter#fedora</a>
</p>
<div class="org-src-container">
<pre class="src src-sh">dnf copr enable erikreider/SwayNotificationCenter
dnf install SwayNotificationCenter
</pre>
</div>
</div>
</div>
<div id="outline-container-org248936a" class="outline-3">
<h3 id="org248936a"><span class="section-number-3">0.16.</span> autotiling in sway (optional)</h3>
<div class="outline-text-3" id="text-0-16">
<div class="org-src-container">
<pre class="src src-sh">pip install i3ipc
pip install <span style="color: #cc6666;">autotiling</span>==<span style="color: #de935f; font-weight: bold;">1.8</span>
</pre>
</div>
</div>
</div>
<div id="outline-container-org71866cc" class="outline-3">
<h3 id="org71866cc"><span class="section-number-3">0.17.</span> sworkstyle (workspace icons) (optional)</h3>
<div class="outline-text-3" id="text-0-17">
<p>
this is disabled by default within sway config, but compatible with waybar and sway
</p>
<p>
installing this needs cargo, to install go here: <a href="#orgae0391e">0.25</a>
this also needs <a href="#orgd797740">0.17.1</a>
</p>
<div class="org-src-container">
<pre class="src src-sh">cargo install sworkstyle
</pre>
</div>
</div>
<div id="outline-container-orgd797740" class="outline-4">
<h4 id="orgd797740"><span class="section-number-4">0.17.1.</span> install icon fonts (Nerd Fonts)</h4>
<div class="outline-text-4" id="text-0-17-1">
<p>
for sworkstyle icons in waybar
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">mkdir</span> ~/.local/share/fonts
<span style="color: #f0c674;">curl</span> -LOv https://github.com/ryanoasis/nerd-fonts/releases/download/v3.1.1/NerdFontsSymbolsOnly.tar.xz --output-dir /tmp/
tar -xvf /tmp/NerdFontsSymbolsOnly.tar.xz -C ~/.local/share/fonts/
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-orge9c1d50" class="outline-3">
<h3 id="orge9c1d50"><span class="section-number-3">0.18.</span> uxn</h3>
<div class="outline-text-3" id="text-0-18">
<p>
installing this just for catclock
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">cd</span> Downloads/
<span style="color: #f0c674;">curl</span> -LOv https://rabbits.srht.site/uxn/uxn-essentials-lin64.tar.gz
tar xvf uxn-essentials-lin64.tar.gz
<span style="color: #f0c674;">mv</span> uxn ~/.local/
</pre>
</div>
</div>
</div>
<div id="outline-container-org418368d" class="outline-3">
<h3 id="org418368d"><span class="section-number-3">0.19.</span> sc-im (terminal spreadsheet)</h3>
<div class="outline-text-3" id="text-0-19">
<p>
I&rsquo;m using this for sc files
</p>
<p>
from <a href="https://github.com/andmarti1424/sc-im/wiki/Installing-on-Fedora-27">https://github.com/andmarti1424/sc-im/wiki/Installing-on-Fedora-27</a>
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> dnf install libzip libzip-devel libxml2-devel ncurses-devel byacc <span style="color: #f0c674;">git</span> gcc gnuplot
<span style="color: #f0c674;">git</span> clone https://github.com/andmarti1424/sc-im.git
<span style="color: #f0c674;">cd</span> sc-im/src/
<span style="color: #f0c674;">make</span>
<span style="color: #f0c674;">sudo</span> <span style="color: #f0c674;">make</span> install
</pre>
</div>
</div>
</div>
<div id="outline-container-org638197a" class="outline-3">
<h3 id="org638197a"><span class="section-number-3">0.20.</span> nsxiv (image viewer)</h3>
<div class="outline-text-3" id="text-0-20">
<div class="org-src-container">
<pre class="src src-sh">dnf copr enable mamg22/nsxiv
dnf install nsxiv
</pre>
</div>
</div>
</div>
<div id="outline-container-org9ca60f2" class="outline-3">
<h3 id="org9ca60f2"><span class="section-number-3">0.21.</span> pip packages</h3>
<div class="outline-text-3" id="text-0-21">
</div>
<div id="outline-container-org306e18e" class="outline-4">
<h4 id="org306e18e"><span class="section-number-4">0.21.1.</span> keepmenu (dmenu keepassxc client)</h4>
<div class="outline-text-4" id="text-0-21-1">
<p>
<a href="https://github.com/firecat53/keepmenu/blob/main/docs/install.md#install-recommended">https://github.com/firecat53/keepmenu/blob/main/docs/install.md#install-recommended</a>
</p>
<div class="org-src-container">
<pre class="src src-sh">pip install --user keepmenu
</pre>
</div>
</div>
</div>
<div id="outline-container-org58e590e" class="outline-4">
<h4 id="org58e590e"><span class="section-number-4">0.21.2.</span> pulsemixer (pulseaudio controller)</h4>
<div class="outline-text-4" id="text-0-21-2">
<div class="org-src-container">
<pre class="src src-sh">pip install --user pulsemixer
</pre>
</div>
</div>
</div>
<div id="outline-container-org976b6a4" class="outline-4">
<h4 id="org976b6a4"><span class="section-number-4">0.21.3.</span> termdown (terminal timer/stopwatch)</h4>
<div class="outline-text-4" id="text-0-21-3">
<div class="org-src-container">
<pre class="src src-sh">pip install termdown
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-org3575ab5" class="outline-3">
<h3 id="org3575ab5"><span class="section-number-3">0.22.</span> go packages</h3>
<div class="outline-text-3" id="text-0-22">
</div>
<div id="outline-container-orgf22b765" class="outline-4">
<h4 id="orgf22b765"><span class="section-number-4">0.22.1.</span> pup</h4>
<div class="outline-text-4" id="text-0-22-1">
<p>
needed for rssadd RSS scanning to work
</p>
<div class="org-src-container">
<pre class="src src-sh">go install github.com/ericchiang/pup@latest
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-orgbaf6af5" class="outline-3">
<h3 id="orgbaf6af5"><span class="section-number-3">0.23.</span> packages from source/binaries</h3>
<div class="outline-text-3" id="text-0-23">
</div>
<div id="outline-container-org7ee84ff" class="outline-4">
<h4 id="org7ee84ff"><span class="section-number-4">0.23.1.</span> simple-mtpfs (for mounting usb)</h4>
<div class="outline-text-4" id="text-0-23-1">
<p>
install dependencies:
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> dnf install libgcc fuse-devel libmtp-devel autoconf-archive
</pre>
</div>
<p>
<a href="https://github.com/phatina/simple-mtpfs#installation">https://github.com/phatina/simple-mtpfs#installation</a>
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">git</span> clone https://github.com/phatina/simple-mtpfs
<span style="color: #f0c674;">cd</span> simple-mtpfs
./autogen.sh
<span style="color: #f0c674;">mkdir</span> build &amp;&amp; <span style="color: #f0c674;">cd</span> build
../configure
<span style="color: #f0c674;">make</span>
<span style="color: #f0c674;">sudo</span> <span style="color: #f0c674;">make</span> install
</pre>
</div>
</div>
</div>
<div id="outline-container-orgdcddb25" class="outline-4">
<h4 id="orgdcddb25"><span class="section-number-4">0.23.2.</span> mpvpaper</h4>
<div class="outline-text-4" id="text-0-23-2">
<p>
animated wallpapers (used by `change-background`)
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">install dependencies</span>
<span style="color: #f0c674;">sudo</span> dnf install meson ninja-build pkg-config wayland-protocols-devel wayland-devel mpv-devel wlroots-devel
<span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">Clone</span>
<span style="color: #f0c674;">git</span> clone --single-branch https://github.com/GhostNaN/mpvpaper
<span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">Build</span>
<span style="color: #f0c674;">cd</span> mpvpaper
meson build --prefix=/usr/local
ninja -C build
<span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">Install</span>
<span style="color: #f0c674;">sudo</span> ninja -C build install
</pre>
</div>
</div>
</div>
<div id="outline-container-org76605ae" class="outline-4">
<h4 id="org76605ae"><span class="section-number-4">0.23.3.</span> 7-zip</h4>
<div class="outline-text-4" id="text-0-23-3">
<p>
get the downloads from <a href="https://www.7-zip.org/download.html">https://www.7-zip.org/download.html</a>
if you&rsquo;re using modern hardware, it&rsquo;s usually 64-bit linux x86-x64
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">downloading and extracting the file</span>
<span style="color: #f0c674;">cd</span> ~/Downloads/
<span style="color: #f0c674;">curl</span> -O &lt;download-url&gt;
<span style="color: #f0c674;">mkdir</span> 7-zip/
<span style="color: #f0c674;">cd</span> 7-zip/
tar -xvf ../&lt;filename&gt;.tar.xz
<span style="color: #5a5b5a;"># </span><span style="color: #5a5b5a;">put it into a PATH directory</span>
<span style="color: #f0c674;">sudo</span> <span style="color: #f0c674;">cp</span> 7zz /usr/local/bin/
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-org4434d62" class="outline-3">
<h3 id="org4434d62"><span class="section-number-3">0.24.</span> AppImages</h3>
<div class="outline-text-3" id="text-0-24">
</div>
<div id="outline-container-org22d5d3d" class="outline-4">
<h4 id="org22d5d3d"><span class="section-number-4">0.24.1.</span> syncplay</h4>
<div class="outline-text-4" id="text-0-24-1">
<p>
from <a href="https://syncplay.pl/download/">https://syncplay.pl/download/</a>
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">curl</span> -LOv https://github.com/Syncplay/syncplay/releases/download/v1.7.0/Syncplay-1.7.0-x86_64.AppImage
<span style="color: #f0c674;">chmod</span> +x Syncplay-*.AppImage
<span style="color: #f0c674;">mv</span> Syncplay-*.AppImage ~/.local/bin/syncplay
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-orgae0391e" class="outline-3">
<h3 id="orgae0391e"><span class="section-number-3">0.25.</span> installing cargo</h3>
<div class="outline-text-3" id="text-0-25">
<p>
<a href="https://doc.rust-lang.org/cargo/getting-started/installation.html">https://doc.rust-lang.org/cargo/getting-started/installation.html</a>
</p>
<p>
when asked, choose to customize installation, and then choose `no` when it asks to modify PATH variable. (it&rsquo;s already set in <code>~/config/shell/profile</code>)
</p>
<div class="org-src-container">
<pre class="src src-shell"><span style="color: #f0c674;">curl</span> https://sh.rustup.rs -sSf | sh
</pre>
</div>
</div>
</div>
<div id="outline-container-org5f65c90" class="outline-3">
<h3 id="org5f65c90"><span class="section-number-3">0.26.</span> setting up flatpak</h3>
<div class="outline-text-3" id="text-0-26">
<p>
from <a href="https://flatpak.org/setup/Fedora">https://flatpak.org/setup/Fedora</a>
</p>
<div class="org-src-container">
<pre class="src src-sh">flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
</pre>
</div>
</div>
</div>
<div id="outline-container-orgff587a6" class="outline-3">
<h3 id="orgff587a6"><span class="section-number-3">0.27.</span> setting up virtualbox</h3>
<div class="outline-text-3" id="text-0-27">
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> usermod -a -G vboxusers default
</pre>
</div>
</div>
</div>
<div id="outline-container-org2319239" class="outline-3">
<h3 id="org2319239"><span class="section-number-3">0.28.</span> flatpak packages</h3>
<div class="outline-text-3" id="text-0-28">
<p>
remember to set permissions with Flatseal, especially access to personal files according to what you want the software to have before launching them.
</p>
</div>
<div id="outline-container-org2a993df" class="outline-4">
<h4 id="org2a993df"><span class="section-number-4">0.28.1.</span> flatseal</h4>
<div class="outline-text-4" id="text-0-28-1">
<div class="org-src-container">
<pre class="src src-sh">flatpak install -y com.github.tchx84.Flatseal
</pre>
</div>
</div>
</div>
<div id="outline-container-org0138bde" class="outline-4">
<h4 id="org0138bde"><span class="section-number-4">0.28.2.</span> Unity</h4>
<div class="outline-text-4" id="text-0-28-2">
<div class="org-src-container">
<pre class="src src-sh">flatpak install flathub com.unity.UnityHub
</pre>
</div>
</div>
</div>
<div id="outline-container-org421406a" class="outline-4">
<h4 id="org421406a"><span class="section-number-4">0.28.3.</span> Foliate (Epub reader)</h4>
<div class="outline-text-4" id="text-0-28-3">
<div class="org-src-container">
<pre class="src src-sh">flatpak install flathub com.github.johnfactotum.Foliate
</pre>
</div>
</div>
</div>
<div id="outline-container-org0f4fa93" class="outline-4">
<h4 id="org0f4fa93"><span class="section-number-4">0.28.4.</span> bottles and dependencies</h4>
<div class="outline-text-4" id="text-0-28-4">
<ul class="org-ul">
<li>gamescope</li>
<li>mangohud</li>
<li>OBS VkCapture tools</li>
<li>OBS VkCapture plugin</li>
</ul>
<div class="org-src-container">
<pre class="src src-sh">flatpak install -y com.valvesoftware.Steam.Utility.gamescope com.usebottles.bottles org.freedesktop.Platform.VulkanLayer.MangoHud org.freedesktop.Platform.VulkanLayer.OBSVkCapture obs-studio-plugin-vkcapture com.obsproject.Studio
</pre>
</div>
</div>
</div>
<div id="outline-container-org2cb0326" class="outline-4">
<h4 id="org2cb0326"><span class="section-number-4">0.28.5.</span> steam</h4>
<div class="outline-text-4" id="text-0-28-5">
<div class="org-src-container">
<pre class="src src-sh">flatpak install -y com.valvesoftware.Steam
</pre>
</div>
</div>
</div>
<div id="outline-container-orgccfdf33" class="outline-4">
<h4 id="orgccfdf33"><span class="section-number-4">0.28.6.</span> rpsc3</h4>
<div class="outline-text-4" id="text-0-28-6">
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> flatpak install -y net.rpcs3.RPCS3
</pre>
</div>
<p>
limits.conf settings <a href="https://github.com/RPCS3/rpcs3/issues/9328">https://github.com/RPCS3/rpcs3/issues/9328</a>
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> su
printf <span style="color: #b5bd68;">'* hard memlock unlimited\n* soft memlock unlimited'</span> &gt;&gt; /etc/security/limits.conf
</pre>
</div>
</div>
</div>
<div id="outline-container-org8a30aff" class="outline-4">
<h4 id="org8a30aff"><span class="section-number-4">0.28.7.</span> cemu</h4>
<div class="outline-text-4" id="text-0-28-7">
<div class="org-src-container">
<pre class="src src-sh">flatpak install flathub info.cemu.Cemu
</pre>
</div>
</div>
</div>
<div id="outline-container-org46f0d90" class="outline-4">
<h4 id="org46f0d90"><span class="section-number-4">0.28.8.</span> discord</h4>
<div class="outline-text-4" id="text-0-28-8">
<div class="org-src-container">
<pre class="src src-sh">flatpak install flathub com.discordapp.Discord
</pre>
</div>
</div>
</div>
<div id="outline-container-orga81015f" class="outline-4">
<h4 id="orga81015f"><span class="section-number-4">0.28.9.</span> spotify</h4>
<div class="outline-text-4" id="text-0-28-9">
<div class="org-src-container">
<pre class="src src-sh">flatpak install flathub io.github.hrkfdn.ncspot
flatpak install flathub com.spotify.Client
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-orgf78f0cb" class="outline-2">
<h2 id="orgf78f0cb"><span class="section-number-2">1.</span> fixes</h2>
<div class="outline-text-2" id="text-1">
</div>
<div id="outline-container-orgb0cba45" class="outline-3">
<h3 id="orgb0cba45"><span class="section-number-3">1.1.</span> crashes with wayland under amd gpus</h3>
<div class="outline-text-3" id="text-1-1">
<p>
see <a href="https://bbs.archlinux.org/viewtopic.php?id=270468">https://bbs.archlinux.org/viewtopic.php?id=270468</a>
<a href="https://forum.manjaro.org/t/graphics-glitches-freeze-up-with-new-comp-error-ring-gfx-timeout/55979/6">https://forum.manjaro.org/t/graphics-glitches-freeze-up-with-new-comp-error-ring-gfx-timeout/55979/6</a>
</p>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> <span style="color: #f0c674;">cp</span> ~/.dots/usr/local/bin/radcard* /usr/local/bin/
<span style="color: #f0c674;">sudo</span> <span style="color: #f0c674;">cp</span> ~/.dots/etc/systemd/system/radcard.service /etc/systemd/system/
<span style="color: #f0c674;">sudo</span> systemctl enable --now radcard.service
</pre>
</div>
<p>
you can check the status with `radcard.sh get` , make sure the output is as follows:
</p>
<div class="org-src-container">
<pre class="src src-nil">power_dpm_state: performance
power_dpm_force_performance_level: high
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-orgec1d0ba" class="outline-2">
<h2 id="orgec1d0ba"><span class="section-number-2">2.</span> todos</h2>
<div class="outline-text-2" id="text-2">
</div>
<div id="outline-container-orgca5bc32" class="outline-3">
<h3 id="orgca5bc32"><span class="section-number-3">2.1.</span> <span class="todo TODO">TODO</span> remove Virtual Box</h3>
</div>
<div id="outline-container-orgfc6805d" class="outline-3">
<h3 id="orgfc6805d"><span class="section-number-3">2.2.</span> <span class="todo TODO">TODO</span> remove autotiling</h3>
</div>
<div id="outline-container-org7cc9bc2" class="outline-3">
<h3 id="org7cc9bc2"><span class="section-number-3">2.3.</span> <span class="todo TODO">TODO</span> write dependencies and programs to separate files</h3>
</div>
<div id="outline-container-org6fe8d7a" class="outline-3">
<h3 id="org6fe8d7a"><span class="section-number-3">2.4.</span> add packages / other</h3>
<div class="outline-text-3" id="text-2-4">
</div>
<div id="outline-container-orgfaa4d5a" class="outline-4">
<h4 id="orgfaa4d5a"><span class="section-number-4">2.4.1.</span> installing bubblejail (WIP)</h4>
<div class="outline-text-4" id="text-2-4-1">
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">git</span> clone https://github.com/igo95862/bubblejail
<span style="color: #f0c674;">cd</span> bubblejail
<span style="color: #f0c674;">git</span> checkout tags/0.8.1
<span style="color: #f0c674;">sudo</span> dnf install scdoc
<span style="color: #f0c674;">sudo</span> dnf install python3
<span style="color: #f0c674;">sudo</span> dnf install python3-jinja2
<span style="color: #f0c674;">sudo</span> dnf install python3-tomli-w
<span style="color: #f0c674;">sudo</span> dnf install python3-tomli
<span style="color: #f0c674;">sudo</span> dnf install libseccomp
<span style="color: #f0c674;">sudo</span> dnf install python3-pyqt6
<span style="color: #f0c674;">sudo</span> dnf install python3-pyxdg
<span style="color: #f0c674;">sudo</span> dnf install bubblewrap
<span style="color: #f0c674;">sudo</span> dnf install xdg-dbus-proxy
meson setup build
<span style="color: #f0c674;">cd</span> build
meson compile
<span style="color: #f0c674;">sudo</span> meson install
</pre>
</div>
</div>
</div>
</div>
<div id="outline-container-org58e81df" class="outline-3">
<h3 id="org58e81df"><span class="section-number-3">2.5.</span> setting up termux (WIP)</h3>
<div class="outline-text-3" id="text-2-5">
<ol class="org-ol">
<li>install termux-api and termux-styling from fdroid</li>
<li>install these packages</li>
</ol>
<div class="org-src-container">
<pre class="src src-sh">pkg install termux-api fd ripgrep <span style="color: #f0c674;">git</span> emacs neovim shellcheck rsync nodejs lf man ffmpeg jq pup recode python-pip clang fontconfig-utils which
</pre>
</div>
<ol class="org-ol">
<li>setup storage</li>
</ol>
<div class="org-src-container">
<pre class="src src-sh">termux-setup-storage
</pre>
</div>
<ol class="org-ol">
<li>install doom emacs</li>
</ol>
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> npm install -g marked
<span style="color: #f0c674;">git</span> clone https://github.com/doomemacs/doomemacs ~/.emacs.d
~/.emacs.d/bin/doom install
</pre>
</div>
<ol class="org-ol">
<li>yt-dlp</li>
</ol>
<div class="org-src-container">
<pre class="src src-sh">pip install yt-dlp
</pre>
</div>
</div>
</div>
<div id="outline-container-org85f5fdd" class="outline-3">
<h3 id="org85f5fdd"><span class="section-number-3">2.6.</span> ryujinx (WIP)</h3>
<div class="outline-text-3" id="text-2-6">
<p>
sudo sysctl -w vm.max<sub>map</sub><sub>count</sub>=524288
</p>
</div>
</div>
<div id="outline-container-orgf5a61ed" class="outline-3">
<h3 id="orgf5a61ed"><span class="section-number-3">2.7.</span> setup flatpak env variable for theme</h3>
<div class="outline-text-3" id="text-2-7">
<div class="org-src-container">
<pre class="src src-nil">flatpak install org.gtk.Gtk3theme.Materia-dark
flatpak install org.gtk.Gtk3theme.Materia
sudo flatpak override --env GTK_THEME=Materia-dark
</pre>
</div>
</div>
</div>
<div id="outline-container-org53128cf" class="outline-3">
<h3 id="org53128cf"><span class="section-number-3">2.8.</span> wlrobs</h3>
<div class="outline-text-3" id="text-2-8">
<div class="org-src-container">
<pre class="src src-sh"><span style="color: #f0c674;">sudo</span> dnf install wayland-devel obs-studio-devel pkg-config meson
</pre>
</div>
<div class="org-src-container">
<pre class="src src-sh">hg clone https://hg.sr.ht/~scoopta/wlrobs
<span style="color: #f0c674;">cd</span> wlrobs
meson setup build
ninja -C build
</pre>
</div>
</div>
</div>
</div>
</div>
</body>
</html>