Today I tested the FPS Microgame from learning area of Unity 3D with Fedora linux distro.
The project works great even my hardware is old.
This is an screenshot of the running process of the project.
tutorials, tips, tricks, commands, programming, linux, windows, database, sql, python, programming language, Fedora, drawing, painting, tutorial, tutorials
[root@desk mythcat]# dnf install Downloads/hyper-3.0.2.x86_64.rpm
Last metadata expiration check: 0:14:49 ago on Sun 07 Mar 2021 11:22:49 AM EET.
Dependencies resolved.
================================================================================
Package Architecture Version Repository Size
================================================================================
Installing:
hyper x86_64 3.0.2-3440 @commandline 37 M
Transaction Summary
================================================================================
Install 1 Package
Total size: 37 M
Installed size: 141 M
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : hyper-3.0.2-3440.x86_64 1/1
Running scriptlet: hyper-3.0.2-3440.x86_64 1/1
Verifying : hyper-3.0.2-3440.x86_64 1/1
Installed:
hyper-3.0.2-3440.x86_64
Complete!
[root@desk Downloads]# dnf install local-5.9.9-linux.rpm
...
Installed:
local-5.9.9-20210215.1.x86_64 ncurses-compat-libs-6.2-3.20200222.fc33.x86_64
nss-tools-3.60.1-1.fc33.x86_64
Complete!
# 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 !!
[root@desk mythcat]# dnf search obconf
...
obconf.x86_64 : A graphical configuration editor for the Openbox window manager
[root@desk mythcat]# dnf install obconf.x86_64
Last metadata expiration check: 0:25:25 ago on Sat 13 Feb 2021 11:49:09 AM EET.
Package obconf-2.0.4-17.20150213git63ec47.fc33.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
<application type="normal">
<position>
<x>center</x>
<y>center</y>
</position>
</application>
<keybindkey="XF86AudioRaiseVolume">
<actionname="Execute">
<command>amixersetMaster5%+unmute</command></action>
</keybind>
<keybindkey="XF86AudioLowerVolume">
<actionname="Execute">
<command>amixersetMaster5%-unmute</command></action>
</keybind>
<keybindkey="XF86MonBrightnessDown">
<actionname="Execute">
<command>xbacklight-20</command>
<startupnotify><enabled>yes</enabled><name>Decreasescreenbrightness</name></startupnotify></action>
</keybind>
<keybindkey="XF86MonBrightnessUp">
<actionname="Execute">
<command>xbacklight+20</command>
<startupnotify><enabled>yes</enabled><name>Increasescreenbrightness</name></startupnotify></action>
</keybind>
[mythcat@desk ~]$ openbox --reconfigure
[mythcat@desk ~]$ lxappearance
[root@desk mythcat]# lxdm-config
[root@desk mythcat]# setxkbmap -layout "us,ro" -option "grp:alt_shift_toggle".
[root@desk mythcat]# dnf search meson
Last metadata expiration check: 2:20:41 ago on Thu 11 Feb 2021 08:39:26 PM EET.
============================== Name Exactly Matched: meson ==============================
meson.noarch : High productivity build system
[root@desk mythcat]# dnf install meson.noarch
...
Installed:
meson-0.55.3-1.fc33.noarch ninja-build-1.10.2-1.fc33.x86_64
Complete!
[mythcat@desk ~]$ mkdir CProjects
[mythcat@desk ~]$ cd CProjects/
[mythcat@desk CProjects]$ vi main.c
[mythcat@desk CProjects]$ vi meson.build
#include
//
// main is where all program execution starts
//
int main(int argc, char **argv) {
printf("Hello there.\n");
return 0;
}
project('tutorial', 'c')
executable('demo', 'main.c')
[mythcat@desk CProjects]$ meson setup builddir
The Meson build system
Version: 0.56.2
Source dir: /home/mythcat/CProjects
Build dir: /home/mythcat/CProjects/builddir
Build type: native build
Project name: tutorial
Project version: undefined
C compiler for the host machine: cc (gcc 10.2.1 "cc (GCC) 10.2.1 20201125 (Red Hat 10.2.1-9)")
C linker for the host machine: cc ld.bfd 2.35-18
Host machine cpu family: x86_64
Host machine cpu: x86_64
Build targets in project: 1
Found ninja-1.10.2 at /bin/ninja
[mythcat@desk CProjects]$ cd builddir/
[mythcat@desk builddir]$ ls
build.ninja compile_commands.json meson-info meson-logs meson-private
[mythcat@desk builddir]$ meson compile
Found runner: ['/bin/ninja']
ninja: Entering directory `.'
[2/2] Linking target demo
[mythcat@desk builddir]$ ls
build.ninja compile_commands.json demo demo.p meson-info meson-logs meson-private
[mythcat@desk builddir]$ ./demo
Hello there.
[root@desk mythcat]# dnf search zeek
Last metadata expiration check: 0:18:02 ago on Sun 07 Feb 2021 11:21:35 AM EET.
No matches found.
[root@desk mythcat]# dnf config-manager --add-repo
https://download.opensuse.org/repositories/security:zeek/Fedora_33/security:zeek.repo
Adding repo from: https://download.opensuse.org/repositories/security:zeek/Fedora_33/security:zeek.repo
[root@desk mythcat]# dnf install zeek
The Zeek Network Security Monitor. (Fedora_33) 105 kB/s | 128 kB 00:01
Last metadata expiration check: 0:00:01 ago on Sun 07 Feb 2021 11:40:31 AM EET.
...
Verifying : zeekctl-3.2.3-1.1.x86_64 8/8
Installed:
libbroker-devel-3.2.3-1.1.x86_64 libpcap-devel-14:1.9.1-6.fc33.x86_64
openssl-devel-1:1.1.1i-1.fc33.x86_64 zeek-3.2.3-1.1.x86_64
zeek-core-3.2.3-1.1.x86_64 zeek-devel-3.2.3-1.1.x86_64
zeek-libcaf-devel-3.2.3-1.1.x86_64 zeekctl-3.2.3-1.1.x86_64
Complete!
[root@desk mythcat]# whereis zeek
zeek: /opt/zeek/bin/zeek
[root@desk mythcat]# whereis zeekctl
zeekctl: /opt/zeek/bin/zeekctl
[root@desk mythcat]# export PATH=/opt/zeek/bin:$PATH
[root@desk mythcat]# zeekctl
Welcome to ZeekControl 2.2.0
Type "help" for help.
...
==== stderr.log
fatal error: problem with interface eth0 (pcap_error: SIOCGIFHWADDR: No such device (pcap_activate))
[root@desk mythcat]# updatedb
[root@desk mythcat]# locate node.cfg
/opt/zeek/etc/node.cfg
[root@desk mythcat]# vi /opt/zeek/etc/node.cfg
[root@desk mythcat]# ip link show
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
...
[root@desk mythcat]# nmcli device status
DEVICE TYPE STATE CONNECTION
...
[root@desk mythcat]# dnf install nuget
...
Installed:
nuget-2.8.7-11.fc33.x86_64
Complete!
Use this command to install it:
[mythcat@desk CSharpProjects]$ nuget install Google.Apis.Discovery.v1
Attempting to resolve dependency 'Google.Apis (= 1.10.0)'.
Attempting to resolve dependency 'Google.Apis.Core (≥ 1.10.0)'.
...
Attempting to resolve dependency 'Google.Apis (≥ 1.49.0)'.
'Google.Apis' already has a dependency defined for 'Google.Apis.Core'.
Create a basic C# project and test it:
[mythcat@desk CSharpProjects]$ mkdir booksAPI && cd booksAPI
[mythcat@desk booksAPI]$ dotnet new console
Getting ready...
...
[mythcat@desk booksAPI]$ dotnet run
Hello World!
Add Google A.P.I. to this project:
[mythcat@desk booksAPI]$ dotnet add package Google.Apis.Discovery.v1 --version 1.49.0
Determining projects to restore...
log : Restored /home/mythcat/CSharpProjects/booksAPI/booksAPI.csproj (in 8.86 sec).
Change the default project source code with this example and add your Google key:
using System;
using System.Threading.Tasks;
using Google.Apis.Discovery.v1;
using Google.Apis.Discovery.v1.Data;
using Google.Apis.Services;
namespace booksAPI
{
class Program
{
[STAThread]
static void Main(string[] args)
{
Console.WriteLine("Discovery API Sample");
Console.WriteLine("====================");
try
{
new Program().Run().Wait();
}
catch (AggregateException ex)
{
foreach (var e in ex.InnerExceptions)
{
Console.WriteLine("ERROR: " + e.Message);
}
}
Console.WriteLine("Press any key to continue...");
Console.ReadKey();
}
private async Task Run()
{
// Create the service.
var service = new DiscoveryService(new BaseClientService.Initializer
{
ApplicationName = "Discovery Sample",
ApiKey="...",
});
// Run the request.
Console.WriteLine("Executing a list request...");
var result = await service.Apis.List().ExecuteAsync();
// Display the results.
if (result.Items != null)
{
foreach (DirectoryList.ItemsData api in result.Items)
{
Console.WriteLine(api.Id + " - " + api.Title);
}
}
}
}
}
I used my key and this is the result of the run project:
[mythcat@desk booksAPI]$ dotnet run
Discovery API Sample
====================
Executing a list request...
abusiveexperiencereport:v1 - Abusive Experience Report API
acceleratedmobilepageurl:v1 - Accelerated Mobile Pages (AMP) URL API
accessapproval:v1 - Access Approval API
accesscontextmanager:v1beta - Access Context Manager API
...
[mythcat@desk ~]$ git clone https://github.com/roblox-linux-wrapper/roblox-linux-wrapper.git
Cloning into 'roblox-linux-wrapper'...
remote: Enumerating objects: 17, done.
remote: Counting objects: 100% (17/17), done.
remote: Compressing objects: 100% (16/16), done.
remote: Total 1471 (delta 7), reused 4 (delta 1), pack-reused 1454
Receiving objects: 100% (1471/1471), 380.74 KiB | 274.00 KiB/s, done.
Resolving deltas: 100% (901/901), done.
[mythcat@desk ~]$ whereis wine
wine: /usr/bin/wine /usr/lib/wine /usr/lib64/wine /usr/share/wine /usr/share/man/man1/wine.1.gz
[mythcat@desk ~]$ roblox-linux-wrapper/rlw
> main: Sourcing /home/mythcat/roblox-linux-wrapper/data/rlw-core.sh
> wineinitialize: sourcing /home/mythcat/.rlw/wine_choice
Another way is to download the EXE file and run it with Wine.
[mythcat@desk ~]$ wget http://setup.rbxcdn.com/RobloxPlayerLauncher.exe
wine RobloxPlayerLauncher.exe
...
You can try to start a game on browser , select the Roblox Player and will get the same error.
A good news is about Roblox Studio, this works very well:
[mythcat@desk ~]$ wget https://setup.rbxcdn.com/RobloxStudioLauncherBeta.exe
[mythcat@desk ~]$ wine RobloxStudioLauncherBeta.exe
My video card NVIDIA Corporation GT218 [GeForce 210] (rev a2) is not very good with this application , but works.[root@desk mythcat]# dnf config-manager --add-repo https://dl.winehq.org/wine-builds/fedora/33/winehq.repo
Adding repo from: https://dl.winehq.org/wine-builds/fedora/33/winehq.repo
[root@desk mythcat]# dnf install wine
WineHQ packages 1.8 MB/s | 1.2 MB 00:00
Dependencies resolved.
================================================================================
Package Arch Version Repo Size
================================================================================
Installing:
wine x86_64 6.0-1.fc33 updates 13 k
Installing dependencies:
SDL2 i686 2.0.14-1.fc33 updates 589 k
cdparanoia-libs i686 10.2-34.fc33 fedora 56 k
gd i686 2.3.0-3.fc33 fedora 142 k
graphene i686 1.10.2-4.fc33 fedora 71 k
gstreamer1-plugins-base i686 1.18.2-1.fc33 updates 2.1 M
...
wine-opencl-6.0-1.fc33.x86_64
wine-pulseaudio-6.0-1.fc33.i686
wine-pulseaudio-6.0-1.fc33.x86_64
wine-small-fonts-6.0-1.fc33.noarch
wine-symbol-fonts-6.0-1.fc33.noarch
wine-system-fonts-6.0-1.fc33.noarch
wine-systemd-6.0-1.fc33.noarch
wine-tahoma-fonts-6.0-1.fc33.noarch
wine-times-new-roman-fonts-6.0-1.fc33.noarch
wine-twain-6.0-1.fc33.i686
wine-twain-6.0-1.fc33.x86_64
wine-webdings-fonts-6.0-1.fc33.noarch
wine-wingdings-fonts-6.0-1.fc33.noarch
Complete!
You can build it from source code:
[mythcat@desk ~]$ cd wine-6.0/
[mythcat@desk wine-6.0]$ ls
aclocal.m4 configure.ac fonts LICENSE.OLD nls server
ANNOUNCE COPYING.LIB include loader po tools
AUTHORS dlls libs MAINTAINERS programs VERSION
configure documentation LICENSE Makefile.in README
Wine uses a virtual C: drive and you need to configure it with this command:
[mythcat@desk ~]$ winecfg
wine: created the configuration directory '/home/mythcat/.wine'
002c:fixme:winediag:LdrInitializeThunk wine-staging 6.0 is a testing version containing experimental patches.
...
This starts a new window where you can set the wine software.[mythcat@desk ~]$ ls -la .wine/drive_c/
total 8
drwxr-xr-x 7 mythcat mythcat 124 Jan 30 11:56 .
drwxr-xr-x 4 mythcat mythcat 117 Jan 30 12:03 ..
drwxr-xr-x 3 mythcat mythcat 23 Jan 30 11:56 ProgramData
drwxr-xr-x 6 mythcat mythcat 97 Jan 30 11:56 'Program Files'
drwxr-xr-x 6 mythcat mythcat 97 Jan 30 11:56 'Program Files (x86)'
drwxr-xr-x 4 mythcat mythcat 35 Jan 30 11:56 users
drwxr-xr-x 18 mythcat mythcat 4096 Jan 30 11:57 windows
-rw-r--r-- 1 mythcat mythcat 9 Jan 30 11:56 .windows-serial
I tested with my favorite old game Dune 2000 from this webpageusing UnityEngine;
using UnityEngine.UI;
using System.Collections;
public class create_button : MonoBehaviour {
void OnGUI()
{
if (GUI.Button(new Rect(10, 10, 300, 20), "Test - Dynamically button"))
{
Debug.Log("Test button");
}
}
}
[root@desk mythcat]# dnf install finch.x86_64
...
Installed:
finch-2.14.1-2.fc33.x86_64 libgnt-2.14.0-3.fc33.x86_64
Complete!
[mythcat@desk ~]$ man finch
You can run it easy with this command:
[mythcat@desk ~]$ finch
[mythcat@desk ~]$ vi ~/.gntrc
[general]
mouse = 1
[root@desk mythcat]# dnf install gpm.x86_64
...
[root@desk mythcat]# systemctl status gpm
● gpm.service - Console Mouse manager
Loaded: loaded (/usr/lib/systemd/system/gpm.service; enabled; vendor prese>
Active: inactive (dead)
...
[root@desk mythcat]# systemctl enable gpm
[root@desk mythcat]# systemctl status gpm
● gpm.service - Console Mouse manager
Loaded: loaded (/usr/lib/systemd/system/gpm.service; enabled; vendor prese>
Active: inactive (dead) since Fri 2021-01-15 15:35:56 EET; 6min ago
Main PID: 15241 (code=exited, status=0/SUCCESS)
CPU: 2ms
Jan 15 15:35:32 desk systemd[1]: Starting Console Mouse manager...
Jan 15 15:35:32 desk /usr/sbin/gpm[15314]: O0o.oops(): [daemon/check_uniqueness>
Jan 15 15:35:32 desk systemd[1]: Started Console Mouse manager.
Jan 15 15:35:32 desk /usr/sbin/gpm[15314]: gpm is already running as pid 15241