You can get a free virtual ticket for a price of 0.
Datatime and Location: NOVEMBER 8—9 LIVE & VIRTUAL YERBA BUENA CENTER FOR THE ARTS, SAN FRANCISCO.

Tutorials and tips on Fedora Linux, Python programming, and software development. Clear guides, source code, and practical examples by Catalin George Festila.

[root@fedora kernel-tests]# dnf install python3-fedora.noarch
...
Installed:
python3-fedora-1.1.1-7.fc37.noarch
python3-kitchen-1.2.6-14.fc37.noarch
python3-lockfile-1:0.12.2-8.fc37.noarch
python3-munch-2.5.0-10.fc37.noarch
python3-openidc-client-0.6.0-17.20220119git0e2ed81.fc37.noarch
Complete!
[mythcat@fedora kernel-tests]$ sudo dnf -y groupinstall "Development Tools"
[mythcat@fedora ~]$ git clone https://pagure.io/kernel-tests.git
Cloning into 'kernel-tests'...
[mythcat@fedora ~]$ cd kernel-tests/
[mythcat@fedora kernel-tests]$ cp config.example .config
[mythcat@fedora kernel-tests]$ vi .config
[mythcat@fedora kernel-tests]$ sudo semanage boolean -m --on selinuxuser_execheap
[mythcat@fedora kernel-tests]$ sudo ./runtests.sh
[sudo] password for mythcat:
Test suite called with default
./default/cachedrop PASS
./default/insert_leap_second PASS
./default/libhugetlbfs SKIP
./default/memfd PASS
./default/modsign PASS
./default/mq-memory-corruption PASS
./default/paxtest SKIP
./default/posix_timers PASS
./default/selinux-dac-controls PASS
./default/stack-randomness PASS
./default/sysfs-perms WARN
./default/timer-overhead PASS
Test suite complete WARN
Your log file is being submitted...
Upload successful!
The following information is not submitted with your log;
it is for informational purposes only.
Vulnerability status:
/sys/devices/system/cpu/vulnerabilities/itlb_multihit:KVM: Mitigation: VMX unsupported
/sys/devices/system/cpu/vulnerabilities/l1tf:Mitigation: PTE Inversion
/sys/devices/system/cpu/vulnerabilities/mds:Vulnerable: Clear CPU buffers attempted, no microcode; SMT disabled
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/mmio_stale_data:Not affected
/sys/devices/system/cpu/vulnerabilities/retbleed:Not affected
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass:Vulnerable
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation: usercopy/swapgs barriers and __user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation: Retpolines, STIBP: disabled, RSB filling, PBRSB-eIBRS: Not affected
/sys/devices/system/cpu/vulnerabilities/srbds:Not affected
/sys/devices/system/cpu/vulnerabilities/tsx_async_abort:Not affected
[mythcat@fedora kernel-tests]$ sudo ./runtests.sh -t performance
Test suite called with performance
Using config in CONFIG.fedora
Sun Aug 21 05:19:23 PM EEST 2022
Latency measurements
Sun Aug 21 05:21:46 PM EEST 2022
Calculating file system latency
Sun Aug 21 05:21:48 PM EEST 2022
Local networking
Sun Aug 21 05:25:29 PM EEST 2022
Bandwidth measurements
Sun Aug 21 05:34:57 PM EEST 2022
Calculating context switch overhead
Sun Aug 21 05:35:20 PM EEST 2022
./performance/lmbench3 PASS
Test suite complete PASS
Your log file is being submitted...
Upload successful!
The following information is not submitted with your log;
it is for informational purposes only.
Vulnerability status:
/sys/devices/system/cpu/vulnerabilities/itlb_multihit:KVM: Mitigation: VMX unsupported
/sys/devices/system/cpu/vulnerabilities/l1tf:Mitigation: PTE Inversion
/sys/devices/system/cpu/vulnerabilities/mds:Vulnerable: Clear CPU buffers attempted, no microcode; SMT disabled
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/mmio_stale_data:Not affected
/sys/devices/system/cpu/vulnerabilities/retbleed:Not affected
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass:Vulnerable
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation: usercopy/swapgs barriers and __user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation: Retpolines, STIBP: disabled, RSB filling, PBRSB-eIBRS: Not affected
/sys/devices/system/cpu/vulnerabilities/srbds:Not affected
/sys/devices/system/cpu/vulnerabilities/tsx_async_abort:Not affected
wget https://release.gitkraken.com/linux/gitkraken-amd64.tar.gz
sudo tar -xvzf gitkraken-amd64.tar.gz

[mythcat@desk ~]$ git clone https://github.com/tomschwarz/neix.git
Cloning into 'neix'...
remote: Enumerating objects: 2574, done.
remote: Counting objects: 100% (365/365), done.
remote: Compressing objects: 100% (274/274), done.
remote: Total 2574 (delta 189), reused 198 (delta 77), pack-reused 2209
Receiving objects: 100% (2574/2574), 26.07 MiB | 6.27 MiB/s, done.
Resolving deltas: 100% (1529/1529), done.
[mythcat@desk ~]$ cd neix
[mythcat@desk neix]$ cmake .
-- The C compiler identification is GNU 11.1.1
-- The CXX compiler identification is GNU 11.1.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
...
-- Found Curses: /usr/lib64/libncursesw.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/mythcat/neix
[mythcat@desk neix]$ make
Scanning dependencies of target neixParser
[ 5%] Building CXX object CMakeFiles/neixParser.dir/src/parser/FactoryParser.cpp.o
...
[ 89%] Built target neixFeed
Scanning dependencies of target neix
[ 94%] Building CXX object CMakeFiles/neix.dir/src/main.cpp.o
[100%] Linking CXX executable bin/neix
[100%] Built target neix
[mythcat@desk neix]$ sudo make install
[sudo] password for mythcat:
[ 26%] Built target neixParser
[ 42%] Built target neixConfig
[ 57%] Built target neixApplication
[ 73%] Built target neixHelper
[ 89%] Built target neixFeed
[100%] Built target neix
Install the project...
-- Install configuration: ""
-- Installing: /usr/local/bin/neix
-- Installing: /usr/local/share/man/man1/neix.1
-- Installing: /usr/local/share/neix/neix.conf
-- Installing: /usr/local/share/neix/feeds.conf
[mythcat@desk neix]$ neix
[neix] Starting version v0.1.5
[neix] Loading configuration files
[neix] Loading feeds
[neix] Launch TUI

# check the branch that you committed to by accident, in this case, is master
git checkout master
# reset the branch back one commit
git reset --soft HEAD^
# use stash to record the current state of the working directory
git stash
# checkout the branch it should be in, in this case, is mymain
git checkout mymain
# apply the stash
git stash apply
# commit the changes
git commit -am "main commit"
# then push the changes to our main branch
git push origin mymain
# checkout the original branch, in this case, is master
git checkout master
# the last step is to force push the commit deletion to the original branch.
git push --force origin master
Hope this help's !!
(env) [mythcat@desk django]$ git init
(env) [mythcat@desk django]$ git add .
(env) [mythcat@desk django]$ git commit -m "First Commit"
(env) [mythcat@desk django]$ git remote add origin https://github.com/catafest/django_chart.git
(env) [mythcat@desk django]$ git push -f origin master
Username for 'https://github.com': catafest
Password for 'https://catafest@github.com':
Enumerating objects: 8730, done.
Counting objects: 100% (8730/8730), done.
Delta compression using up to 2 threads
Compressing objects: 100% (5056/5056), done.
Writing objects: 100% (8730/8730), 14.12 MiB | 744.00 KiB/s, done.
Total 8730 (delta 2597), reused 8730 (delta 2597)
remote: Resolving deltas: 100% (2597/2597), done.
To https://github.com/catafest/django_chart.git
+ b2c0e70...0746fa8 master -> master (forced update)
This last output tells me the files are on GitHub repo project.
[root@desk mythcat]# dnf -y install git
Let's see the version of this tool with a regular user:[mythcat@desk ~]$ git --version
git version 2.21.0
Let's set up the user for my GitHub account:[mythcat@desk ~]$ git config --global user.name "catafest"
[mythcat@desk ~]$ git config --global user.email "catafest@yahoo.com"
You can see it later with this command:[mythcat@desk ~]$ git config --list
[mythcat@desk ~]$ git config --global --list
I used this commands to create a folder for my git projects:[mythcat@desk ~]$ mkdir project_github
[mythcat@desk ~]$ cd project_github/
Now I can download my GitHub project named flask_yt from here:[mythcat@desk project_github]$ git clone https://github.com/catafest/flask_yt.git
Cloning into 'flask_yt'...
remote: Enumerating objects: 23, done.
remote: Counting objects: 100% (23/23), done.
remote: Compressing objects: 100% (19/19), done.
remote: Total 23 (delta 1), reused 14 (delta 0), pack-reused 0
Unpacking objects: 100% (23/23), done.
If you don't have one then you can create your new project on your GitHub account. Let's make some changes into README.md file:[mythcat@desk project_github]$ cd flask_yt/
[mythcat@desk flask_yt]$ vim README.md
...
Now I can use git tool:[mythcat@desk flask_yt]$ git status
On branch master
Your branch is up to date with 'origin/master'.
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git checkout -- ..." to discard changes in working directory)
modified: README.md
no changes added to commit (use "git add" and/or "git commit -a")
[mythcat@desk flask_yt]$ git add *
[mythcat@desk flask_yt]$ git commit -m "first commit"
[master 56f1e53] first commit
1 file changed, 1 insertion(+)
Now I can use my username and password from GitHub when I run this command:[mythcat@desk flask_yt]$ git push origin master
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 2 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 352 bytes | 352.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/catafest/flask_yt.git
5ecffdd..56f1e53 master -> master
The changes from README.md will be send to my GitHub website.