contains links to websites' contents that I find interesting.
Free Courses
Tutorials
Interesting
Investment
Audio
AI
Substack
Other
Notes
- Fedora Watchman Error
- youtube-dl
- flutter formatting on vscode
- Fedora 33 wasm_exec.js not found
- remove old kernels (Fedora)
- new Date() on react native
- nested flex
- random number of fixed length
- What is the JavaScript version of sleep()?
- Format number in react
- Vim setup on fedora
- Vim tab key 4 spaces
- Restore iPhone on Fedora
- Remove old snap revision
- Compile objective-c on Fedora
- Stubby on fedora
- Flatpak
- Analyze apk file
- Access iphone data
- Insomnia token environment variable
- How To Find The Package That Provides A Specific File In Linux
- Packagekit consumes memory
https://www.udemy.com/share/101Woe/ Mastering Data Structures & Algorithms using C and C++
https://github.com/input-output-hk/plutus-pioneer-program
https://cryptomator.org/ cryptomator
https://github.com/source-academy/sicp Structure and Interpretation of Computer Programs, Second Edition, JavaScript Adaptation
https://developer.android.com/courses android courses
- Standford CS 253 web security
- CS9: Problem-Solving for the CS Technical Interview
- blockchain and money
https://www.youtube.com/playlist?list=PLUl4u3cNGP63UUkfL0onkxF6MYgVa04Fn
- Exploiting Buffer (nodejs)
- Goof vulnerable app
- github - project-based learning
- [https://blog.sanctum.geek.nz/series/unix-as-ide/](Unix as IDE)
- https://capacitorjs.com/ (A cross-platform native runtime for web apps.)
- https://react-spectrum.adobe.com/react-aria/getting-started.html
- https://reactjs.org/blog/2020/12/21/data-fetching-with-react-server-components.html
- https://react-query.tanstack.com/ (Performant and powerful data synchronization for React)
- https://dev.to/giteden/top-5-react-chart-libraries-for-2020-1amb
- https://github.com/cheeaun/hackerweb-native-2
- https://github.com/developit/mitt (Tiny 200 byte functional event emitter / pubsub.)
- https://dev.to/dabit3/7-tips-for-breaking-into-devrel-7jk
- https://fusejs.io/ (Fuse.js is a powerful, lightweight fuzzy-search library, with zero dependencies)
- https://lunrjs.com/ (A bit like Solr, but much smaller and not as bright.)
- https://medium.com/flutter/learning-flutters-new-navigation-and-routing-system-7c9068155ade (flutter's new navigation and routing system)
- https://entgo.io/ (An entity framework for Go)
- https://rauchg.com/2020/next-for-vercel#frontend-focus (Next for Vercel)
- https://cyberthreat.id/read/1306/Bocoran-Cara-Kerja-Cellebrite-Sedot-Data-Ponsel-Vanessa (Universal Forensic Extraction Device)
- https://chakra-ui.com/docs/comparison (chakra ui)
- https://ionicframework.com/react
- https://github.com/mlynch/nextjs-tailwind-capacitor (A starting point for building an iOS, Android, and Progressive Web App with Tailwind CSS, React, and Capacitor)
- https://github.com/ben-rogerson/twin.macro (Twin blends the magic of Tailwind with the flexibility of css-in-js (emotion, styled-components and goober) at build time.)
- https://www.reactnative.express/ (The all-in-one guide to React Native)
- https://animationbook.codedaily.io/flatten-offset/ (master react native animations course)
- https://github.com/aniftyco/awesome-tailwindcss (Awesome things related to Tailwind CSS)
- https://osint.sh/buckets/ (Find public buckets on AWS S3 & Azure Blob by a keyword)
- https://www.eddyvinck.com/projects/windows-xp/ (windows xp)
- https://code.nsa.gov/ (NSA open source software)
- https://medium.com/ovrsea/react-re-rendering-purecomponents-and-memoization-553a2cc863c3 (purecomponent and memoization)
- https://corellium.com/blog/linux-m1 (How We Ported Linux to the M1)
- https://sitejs.org/ (Small Web construction set.)
- https://github.com/pavlobu/deskreen (Deskreen turns any device with a web browser to a second screen for your computer)
- https://github.com/daffainfo/AllAboutBugBounty (All about bug websites (bypasses, payloads, and etc))
- https://github.com/togiberlin/ui-ux-designer-roadmap (Roadmap on becoming a UI/UX designer in 2017)
- https://github.com/gocraft/work
- https://regex101.com/ (regular expression 101)
- https://github.com/microsoft/rushstack (rushstack)
- https://github.com/sundowndev/hacker-roadmap (hacker roadmap)
- https://robotmoon.com/ssh-tunnels/ (A visual guide to SSH tunnels)
- https://justgetmydata.com/ (JustGetMyData)
- https://github.com/rust-lang/rustlings (crab Small exercises to get you used to reading and writing Rust code!)
- https://adbshell.com/
- https://appicon.co/#app-icon (app icon generator)
- https://github.com/dabit3/awesome-aws-amplify (Curated list of AWS Amplify Resources)
- https://github.com/gurugio/lowlevelprogramming-university (How to be low-level programmer)
- https://github.com/jwasham/coding-interview-university (A complete computer science study plan to become a software engineer.)
- https://github.com/DidierRLopes/GamestonkTerminal (The next best thing after Bloomberg Terminal)
- https://github.com/inancgumus/learngo (1000+ Hand-Crafted Go Examples, Exercises, and Quizzes)
- https://github.com/liamg/traitor (Automatic Linux privesc via exploitation of low-hanging fruit e.g. gtfobins arrow_up skull_and_crossbones)
- https://github.com/naptha/tesseract.js#tesseractjs (Pure Javascript OCR for more than 100 Languages booktadadesktop_computer)
- https://www.reactnative.express/
- https://thorstenball.com/blog/2014/11/20/unicorn-unix-magic-tricks/ (Unicorn Unix Magic Tricks)
- https://github.com/pdfcpu/pdfcpu (A PDF processor written in Go.)
- https://github.com/florinpop17/app-ideas (A Collection of application ideas which can be used to improve your coding skills.)
- https://www.thonky.com/qr-code-tutorial/introduction
- https://rytisbiel.com/2021/03/06/darker-corners-of-go/ (Darker Corners of Go)
- https://nivo.rocks/components (nivo provides a rich set of dataviz components, built on top of the awesome d3 and Reactjs libraries.)
- https://goplus.org/ (GoPlus - The Go+ language for data science)
- https://pdf.math.dev/ (PDFs from HTML)
- https://reactioncommerce.com/ (Reaction Commerce is an API-first, modular commerce stack made for ambitious brands and retailers. Reaction’s service-based architecture is built to deliver flexibility and freedom at scale.)
- https://cheesecakelabs.com/blog/efficient-way-structure-react-native-projects/ (An efficient way to structure React Native projects)
- https://career-ladders.dev/engineering/ (Career Ladders)
- https://teguh.co/derita-pelanggan-indihome-sudah-bayar-datanya-malah-dicuri/
- https://zone-h.org/
- http://www.pvv.org/~hakonhal/main.cgi/c/classes/ (classes in c)
- https://www.ojk.go.id/id/kanal/perbankan/Pages/Sistem-Layanan-Informasi-Keuangan-SLIK.aspx (Sistem Layanan Informasi Keuangan (SLIK))
- https://github.com/wbkd/react-flow (Highly customizable library for building interactive node-based UIs, editors, flow charts and diagrams)
- https://www.computer.org/education/bodies-of-knowledge/software-engineering (Software Engineering Body of Knowledge (SWEBOK))
- https://react-typescript-cheatsheet.netlify.app/ (React TypeScript Cheatsheets)
- https://engineering.fb.com/2021/04/05/video-engineering/how-facebook-encodes-your-videos/ (How Facebook encodes your videos)
- https://medium.com/@kitze/github-stars-wont-pay-your-rent-8b348e12baed (GitHub stars won’t pay your rent)
- https://github.com/Schniz/fnm (Fast and simple Node.js version manager, built in Rust)
- https://moneyweek.com/investments/alternative-finance/bitcoin/602678/bitcoin-energy-consumption (Bitcoin does consume a lot of energy – but here’s why it’s worth it)
- https://github.com/typescript-cheatsheets/react (typescript cheatsheets)
- https://stackoverflow.com/questions/49785592/bearer-token-in-postman (save token to variable on postman)
- https://learning.postman.com/docs/sending-requests/authorization/
- https://github.com/atlassian/react-beautiful-dnd
proguard: https://medium.com/androiddevelopers/practical-proguard-rules-examples-5640a3907dc9 (Practical ProGuard rules examples)
- https://fs.blog/2019/02/investment-algorithm/ (An Investment Approach That Works)
- https://www.thejakartapost.com/adv/2020/12/16/tiger-brokers-helping-indonesian-investors-trade-global-markets-supported-by-nasdaq-data.html (tiger brokers)
- https://www.headphonesty.com/2017/04/5-types-headphone-drivers-know/
- https://www.rtings.com/headphones/learn/dynamic-vs-planar-magnetic
- https://www.technologyreview.com/2021/01/29/1017065/ai-image-generation-is-racist-sexist/ (An AI saw a cropped photo of AOC. It autocompleted her wearing a bikini.)
Mereka menyoroti penerapan syariat Islam di Aceh https://www.joelonsoftware.com/ https://blog.pragmaticengineer.com/software-engineering-salaries-in-the-netherlands-and-europe/
The user limit on the total number of inotify watches was reached; increase the fs.inotify.max_user_watches sysctl
how to fix this:
sudo sysctl fs.inotify.max_user_watches=524288
to persist the changes, edit /etc/sysctl.conf and add:
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
fs.inotify.max_user_watches = 524288
references:
https://gist.github.com/grenade/5aa3894695ead8f4f840c0bfa6e2be34
https://facebook.github.io/watchman/docs/troubleshooting.html#poison-opendir
while ! youtube-dl -r 300K https://links -c --socket-timeout 5; do echo DISCONNECTED; sleep 5; done
get one subtitle
youtube-dl --write-sub --sub-lang en --skip-download URL
https://superuser.com/questions/927523/how-to-download-only-subtitles-of-videos-using-youtube-dl
change filename
youtube-dl https://link --output "something.%(ext)s"
"editor.defaultFormatter": "Dart-Code.dart-code", is the important part
{
"editor.defaultFormatter": "esbenp.prettier-vscode",
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true
},
"[dart]": {
"editor.formatOnSave": true,
"editor.formatOnType": true,
"editor.rulers": [80],
"editor.selectionHighlight": false,
"editor.suggest.snippetsPreventQuickSuggestions": false,
"editor.suggestSelection": "first",
"editor.tabCompletion": "onlySnippets",
"editor.wordBasedSuggestions": false,
"editor.defaultFormatter": "Dart-Code.dart-code",
},
"dart.debugExternalLibraries": false,
"dart.debugSdkLibraries": false,
"editor.fontSize": 12,
"prettier.packageManager": "yarn"
}
error:
cp "$(go env GOROOT)/misc/wasm/wasm_exec.js" .
cp: cannot stat '/usr/lib/golang/misc/wasm/wasm_exec.js': No such file or directory
solution:
sudo dnf install golang-misc
list currently installed kernels:
$ rpm -q kernel-core
kernel-core-5.10.9-201.fc33.x86_64
kernel-core-5.10.14-200.fc33.x86_64
remove one of them:
$ sudo dnf remove kernel-core-5.10.9-201.fc33.x86_64
source: https://ask.fedoraproject.org/t/old-kernels-removal/7026
new Date() on node.js
> startDate = '2021-02-17 08:30:00.667'
'2021-02-17 08:30:00.667'
> formatted = new Date(startDate)
2021-02-17T01:30:00.667Z
on react native
new Date('2021-02-17 08:30:00.667')
2021-02-17T08:30:00.667Z
this could result in an unwanted behavior, especially when you try to save calendar events (react-native-calendar-events)
solution:
import {parseISO} from 'date-fns';
parseISO('2021-02-17 08:30:00.667')
https://date-fns.org/v2.17.0/docs/parseISO
https://stackoverflow.com/questions/52439969/react-native-nested-flex/52440065
https://stackoverflow.com/questions/951021/what-is-the-javascript-version-of-sleep
source: https://github.com/asendia/severance-pay
import React from 'react';
import NumberFormat from 'react-number-format';
interface NumberFormatCustomProps {
inputRef: (instance: NumberFormat | null) => void;
onChange: (event: { target: { name: string; value: string } }) => void;
name: string;
}
function CurrencyInput(props: NumberFormatCustomProps) {
const { inputRef, onChange, ...other } = props;
return (
<NumberFormat
{...other}
getInputRef={inputRef}
onValueChange={(values) => {
onChange({
target: {
name: props.name,
value: values.value,
},
});
}}
thousandSeparator
isNumericString
prefix='Rp '
/>
);
}
export default CurrencyInput;
source: https://uwot.eu/blog/setting-up-vim-on-fedora/
the source is still valid today, the following is a copy (and minor modification) of the codes on the blog.
sudo dnf install vim-enhanced
powerline
sudo dnf install vim-powerline
vundle and youCompleteMe
$ mkdir ~/.vim/bundle
$ cd ~/.vim/bundle
$ git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
$ git clone https://github.com/ycm-core/YouCompleteMe.git
$ sudo dnf install cmake gcc-c++ make python3-devel
$ cd YouCompleteMe
$ git submodule update --init --recursive
$ python install.py --clangd-completer --go-completer
$ vim +PluginInstall +qall
edit /etc/vimrc
" When started as "evim", evim.vim will already have done these settings.
if v:progname =~? "evim"
finish
endif
" Use Vim settings, rather than Vi settings (much better!).
" This must be first, because it changes other options as a side effect.
" Avoid side effects when it was already reset.
if &compatible
set nocompatible
endif
" When the +eval feature is missing, the set command above will be skipped.
" Use a trick to reset compatible only when the +eval feature is missing.
silent! while 0
set nocompatible
silent! endwhile
" Allow backspacing over everything in insert mode.
set backspace=indent,eol,start
"set ai " always set autoindenting on
"set backup " keep a backup file
set viminfo='20,\"50 " read/write a .viminfo file, don't store more
" than 50 lines of registers
set history=50 " keep 50 lines of command line history
set ruler " show the cursor position all the time
set showcmd " display incomplete commands
set wildmenu " display completion matches in a status line
set ttimeout " time out for key codes
set ttimeoutlen=100 " wait up to 100ms after Esc for special key
" Show @@@ in the last line if it is truncated.
set display=truncate
" Show a few lines of context around the cursor. Note that this makes the
" text scroll if you mouse-click near the start or end of the window.
set scrolloff=5
" Do incremental searching when it's possible to timeout.
if has('reltime')
set incsearch
endif
" Do not recognize octal numbers for Ctrl-A and Ctrl-X, most users find it
" confusing.
set nrformats-=octal
" Only do this part when compiled with support for autocommands
if has("autocmd")
augroup fedora
autocmd!
" In text files, always limit the width of text to 78 characters
" autocmd BufRead *.txt set tw=78
" When editing a file, always jump to the last cursor position
autocmd BufReadPost *
\ if line("'\"") > 0 && line ("'\"") <= line("$") |
\ exe "normal! g'\"" |
\ endif
" don't write swapfile on most commonly used directories for NFS mounts or USB sticks
autocmd BufNewFile,BufReadPre /media/*,/run/media/*,/mnt/* set directory=~/tmp,/var/tmp,/tmp
" start with spec file template
" 1724126 - do not open new file with .spec suffix with spec file template
" apparently there are other file types with .spec suffix, so disable the
" template
" autocmd BufNewFile *.spec 0r /usr/share/vim/vimfiles/template.spec
augroup END
endif
if has("cscope") && filereadable("/usr/bin/cscope")
set csprg=/usr/bin/cscope
set csto=0
set cst
set nocsverb
" add any database in current directory
if filereadable("cscope.out")
cs add $PWD/cscope.out
" else add database pointed to by environment
elseif $CSCOPE_DB != ""
cs add $CSCOPE_DB
endif
set csverb
endif
" Switch syntax highlighting on, when the terminal has colors
" Also switch on highlighting the last used search pattern.
if &t_Co > 2 || has("gui_running")
" Revert with ":syntax off".
syntax on
" I like highlighting strings inside C comments.
" Revert with ":unlet c_comment_strings".
let c_comment_strings=1
set hlsearch
endif
filetype plugin on
if &term=="xterm"
set t_Co=8
set t_Sb=m
set t_Sf=m
endif
" Convenient command to see the difference between the current buffer and the
" file it was loaded from, thus the changes you made.
" Only define it when not defined already.
" Revert with: ":delcommand DiffOrig".
if !exists(":DiffOrig")
command DiffOrig vert new | set bt=nofile | r ++edit # | 0d_ | diffthis
\ | wincmd p | diffthis
endif
if has('langmap') && exists('+langremap')
" Prevent that the langmap option applies to characters that result from a
" mapping. If set (default), this may break plugins (but it's backward
" compatible).
set nolangremap
endif
" Don't wake up system with blinking cursor:
let &guicursor = &guicursor . ",a:blinkon0"
" Source a global configuration file if available
if filereadable("/etc/vimrc.local")
source /etc/vimrc.local
endif
" powerline
python from powerline.vim import setup as powerline_setup
python powerline_setup()
python del powerline_setup
set laststatus=2
" Vundle
set nocompatible " be iMproved, required
filetype off " required
" set the runtime path to include Vundle and initialize
set rtp+=/home/fahmad/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
Plugin 'Valloric/YouCompleteMe'
" All of your Plugins must be added before the following line
call vundle#end() " required
filetype plugin indent on " required
" To ignore plugin indent changes, instead use:
"filetype plugin on
"
Create a symbolic link to the plugins directory and set Vim as alias for vi in /root/.bashrc:
$ su -c "mkdir /root/.vim && ln -s ~/.vim/bundle /root/.vim"
if Unknown function: vundle#begin
https://stackoverflow.com/questions/25444680/unknown-function-vundlebegin
filetype plugin indent on
" show existing tab with 4 spaces width
set tabstop=4
" when indenting with '>', use 4 spaces width
set shiftwidth=4
" On pressing tab, insert 4 spaces
set expandtab
https://stackoverflow.com/a/234578
get ipsw from https://ipsw.me/download/iPhone8,1/18D52
wget -c http://updates-http.cdn-apple.com/2021WinterFCS/fullrestores/001-97948/4723C303-5083-425F-AA7B-66485F4D6625/iPhone_4.7_14.4_18D52_Restore.ipsw
check sum
[fahmad@ryzen ~]$ sha1sum iPhone_4.7_14.4_18D52_Restore.ipsw
b2bc246798e036e1b119995a8a51a28518ead5d6 iPhone_4.7_14.4_18D52_Restore.ipsw
[fahmad@ryzen ~]$ md5sum iPhone_4.7_14.4_18D52_Restore.ipsw
62cc61fd412bb2b52efcc80c66182832 iPhone_4.7_14.4_18D52_Restore.ipsw
install required softwares and libs:
sudo dnf install libimobiledevice-devel
sudo dnf install usbmuxd libplist
and follow the installation process here: https://github.com/libimobiledevice/idevicerestore
connect to usb
[fahmad@ryzen ~]$ lsusb
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 003: ID 046d:c534 Logitech, Inc. Unifying Receiver
Bus 003 Device 002: ID 04d9:1818 Holtek Semiconductor, Inc. Keyboard [Diatec Filco Majestouch 2]
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 014: ID 05ac:12a8 Apple, Inc. iPhone 5/5C/5S/6/SE
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
change path to where iPhone_4.7_14.4_18D52_Restore.ipsw resides, then proceed
[fahmad@ryzen ~]$ sudo idevicerestore -l
Found device in Recovery mode
Identified device as n71map, iPhone8,1
The following firmwares are currently being signed for iPhone8,1:
[1] 14.4 (build 18D52)
Select the firmware you want to restore: 1
Selected firmware 14.4 (build 18D52)
Verifying 'iPhone_4.7_14.4_18D52_Restore.ipsw'...
Checksum matches.
#!/bin/bash
# Removes old revisions of snaps
# CLOSE ALL SNAPS BEFORE RUNNING THIS
set -eu
snap list --all | awk '/disabled/{print $1, $3}' |
while read snapname revision; do
snap remove "$snapname" --revision="$revision"
https://forum.snapcraft.io/t/snap-command-to-remove-old-snap-revisions/7685/3
dependencies:
sudo dnf install gnustep-make gnustep-base gnustep-base-devel libpng libpng-devel libtiff libtiff-devel libobjc libxml2 libxml2-devel libX11-devel libXt-devel libjpeg libjpeg-devel gcc-objc
test.m:
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
NSLog(@"hello world");
[pool drain];
return 0;
}
compile:
gcc `gnustep-config --objc-flags` -L /usr/lib64/GNUstep/Libraries/ -lgnustep-base -lobjc test.m -o test
https://stackoverflow.com/questions/11766326/objective-c-compilation-error
https://www.tutorialspoint.com/objective_c/objective_c_environment_setup.htm
https://www.linuxbabe.com/ubuntu/ubuntu-stubby-dns-over-tls
tools: https://ibotpeaches.github.io/Apktool/
https://github.com/ashishb/android-security-awesome
https://developer.android.com/studio/build/apk-analyzer
apktool d app-arm64-v8a-release.apk
list of files
[fahmad@ryzen app-arm64-v8a-release]$ ls -lh
total 28K
-rw-rw-r--. 1 fahmad fahmad 9.2K Mar 29 09:02 AndroidManifest.xml
-rw-rw-r--. 1 fahmad fahmad 1.4K Mar 29 09:02 apktool.yml
drwxrwxr-x. 4 fahmad fahmad 58 Mar 29 09:02 assets
drwxrwxr-x. 3 fahmad fahmad 23 Mar 29 09:02 lib
drwxrwxr-x. 3 fahmad fahmad 49 Mar 29 09:02 original
drwxrwxr-x. 144 fahmad fahmad 4.0K Mar 29 09:02 res
drwxrwxr-x. 18 fahmad fahmad 181 Mar 29 09:02 smali
drwxrwxr-x. 3 fahmad fahmad 4.0K Mar 29 09:02 unknown
check env variables
cd smali/com/appname
cat BuildConfig.smali
.class public final Lcom/appname/BuildConfig;
.super Ljava/lang/Object;
.source ""
# static fields
.field public static final APPLICATION_ID:Ljava/lang/String; = "com.appname"
.field public static final BUILD_TYPE:Ljava/lang/String; = "release"
.field public static final DEBUG:Z = false
.field public static final REACT_APP_SOMETHING_SOMETHING:Ljava/lang/String; = "something-something"
.field public static final REACT_APP_BASE_URL:Ljava/lang/String; = "https://url-endpoint.com"
.field public static final VERSION_CODE:I = 0x3ec
.field public static final VERSION_NAME:Ljava/lang/String; = "1.0"
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
idevicepair pair
usbmuxd -f -v
sudo dnf install ifuse
sudo mkdir /media/iphone
ifuse /media/iphone
https://www.maketecheasier.com/easily-mount-your-iphone-as-an-external-drive-in-ubuntu/
dnf provides /usr/bin/dig
https://ostechnix.com/find-package-provides-specific-file-linux/
systemctl stop packagekit
systemctl disable packagekit
https://docs.fedoraproject.org/en-US/Fedora/15/html/Deployment_Guide/ch-PackageKit.html
https://www.reddit.com/r/Fedora/comments/gcv6as/is_there_a_way_to_disable_packagekit/
https://stackoverflow.com/a/38486048
cat /proc/sys/fs/inotify/max_user_instances
echo 256 > /proc/sys/fs/inotify/max_user_instances
In order to make that change permanent add a line to /etc/sysctl.conf:
fs.inotify.max_user_instances = 256