Jogando no FreeBSD!

Quem disse que FreeBSD é apenas para Servidor?

por SilCarlos

Embora o FreeBSD seja conhecido por sua estabilidade, desempenho e recursos avançados, não é a escolha mais comum para jogos de videogame. As distribuições mais populares para jogos geralmente são baseadas em GNU/Linux, como o SteamOS. No entanto, é importante notar que a maioria dos desenvolvedores de jogos foca em sistemas operacionais mais populares, como Microsoft Windows e Android, o que significa que o suporte e a disponibilidade de jogos para FreeBSD podem ser limitados.

Nem tudo está perdido, é possível executar jogos em FreeBSD usando emuladores e outras ferramentas de compatibilidade (Linux). Neste artigo veremos algumas formas de jogar no FreeBSD. Boa leitura.

Sobre o FreeBSD

O FreeBSD tem suas origens na história do sistema operacional BSD (Berkeley Software Distribution). Foi derivado do sistema Unix, desenvolvido na Universidade da Califórnia, em Berkeley, nos Estados Unidos. A Universidade da Califórnia desempenhou um papel significativo no desenvolvimento do Unix. Alguns dos principais contribuidores incluíam Bill Joy, Ken Thompson, Dennis Ritchie e outros.

Ao longo dos anos 70 e início dos anos 80, a UC Berkeley lançou uma série de versões do BSD Unix. A versão 4.2BSD foi especialmente influente. Contudo, as versões iniciais ainda continham código do Unix AT&T, e a universidade estava limitada em sua capacidade de distribuir livremente essas versões devido às restrições de licenciamento. Para contornar as restrições, em meados da década de 1980, a Universidade de Berkeley lançou uma versão chamada “BSD-Lite”, que continha apenas código original da Berkeley e não incluía o código do Unix AT&T. Esse código era mais livremente distribuível.

Em 1993, um grupo de voluntários liderados por Jordan Hubbard, David Greenman e Rod Grimes começou a trabalhar em uma versão derivada do BSD-Lite que eventualmente se tornaria o FreeBSD. A ideia era criar um sistema operacional livre e de código aberto, baseado nas fundações do BSD, mas com melhorias e atualizações significativas.

A primeira versão oficial do FreeBSD, a 1.0, foi lançada em dezembro de 1993. Desde então, o sistema operacional passou por desenvolvimento contínuo e evoluiu com contribuições da comunidade de código aberto ao longo dos anos. Uma das razões pelas quais o FreeBSD se tornou popular foi a escolha da licença BSD, que é conhecida por sua permissividade. Isso permitiu que o código fosse amplamente utilizado e incorporado em outros projetos, até mesmo comerciais.

Atualmente é amplamente utilizado em servidores, computadores pessoais (PC), computadores de placas únicas (SBC) e internet das coisas – IoT.

Também é a base para muitos sistemas populares, como:

Algumas características notáveis do FreeBSD:

Como Instalar FreeBSD com ambiente Gráfico?

Neste artigo não irei abordar a instalação do sistema operacional FreeBSD, porém, deixarei logo abaixo um video didático do RibaLinux abordando a instalação do FreeBSD com ambiente gráfico GNOME.

https://inv.tux.pizza/watch?v=a9DMrEl-1DU

Sobre o Gerenciamento de pacotes no FreeBSD

O FreeBSD possui dois sistemas de gerenciamento de pacotes: PKG e Ports. Ambos têm funções semelhantes, mas diferem na forma como os pacotes são gerenciados e instalados.

PKG

É um sistema de gerenciamento de pacotes binários. Ele simplifica o processo de instalação, remoção e atualização de software, fornecendo pacotes pré-compilados que podem ser instalados de forma rápida e eficiente. Os pacotes binários são compilados por mantenedores de pacotes e geralmente são mais convenientes para usuários finais.

Exemplos:

$ sudo pkg install mame

$ sudo pkg install openttd

VOCÊ SABIA!?

O OctoPkg é uma interface gráfica semelhante ao Synaptics do Debian para o gerenciador de pacotes pkg do FreeBSD. Ele permite aos usuários pesquisar, instalar, remover e atualizar pacotes pkg graficamente, além de mostrar arquivos instalados, descrição do pacote, metadados e dependências. OctoPkg é baseado em Qt e fornece uma maneira conveniente de gerenciar pacotes no FreeBSD.

PORTS

O sistema de ports é mais flexível e oferece aos usuários mais controle sobre o processo de compilação do software a partir do código-fonte. Cada port contém scripts e instruções para baixar, compilar e instalar um determinado programa. Isso permite personalizar opções de compilação e ajustar o software para atender às necessidades específicas do usuário.

Exemplos:

$ cd /usr/ports/emulators/mame && sudo make install clean

$ cd /usr/ports/games/freecol/ && sudo make install clean

VOCÊ SABIA!?

O sistema operacional MidnightBSD (derivado do FreeBSD) possui uma interface gráfica para o gerenciamento e configuração do Ports, chamado mports, que vem disponível no ambiente de trabalho GNUstep. Mports é o sistema de gerenciamento de pacotes padrão do MidnightBSD, que permite aos usuários instalar (mports install), atualizar (mports update) e remover (mports delete) software no sistema no modo gráfico.

Mais detalhes sobre mports, no link logo abaixo:

https://www.midnightbsd.org/documentation/mports/index.html

A escolha entre pkg e ports geralmente depende das preferências e requisitos do usuário. Para a maioria dos usuários, o pkg é mais conveniente, enquanto os desenvolvedores e usuários avançados podem preferir a flexibilidade oferecida pelos ports.

Neste artigo utilizarei os dois métodos de instalação de pacotes, isto é, pkg e o ports.

Como consultar a lista de pacotes do port no Freebsd?

Para consultar a lista de ports disponíveis no FreeBSD, você pode usar o comando portsnap. Este comando é utilizado para manter e atualizar uma coleção de árvores de ports em seu sistema operacional.

Aqui estão os passos básicos:

1) Certifique-se de que você tem portsnap instalado;

$ sudo pkg install portsnap

2) Baixe a coleção de árvores de ports;

$ sudo portsnap fetch

3) Extraia a coleção de árvores de ports;

$ sudo portsnap extract

4) Atualize a coleção de árvores de ports;

$ sudo portsnap update

5) Pesquise a lista de categorias e ports:

$ cd /usr/ports $ ls

A árvore de ports estará localizada no diretório /usr/ports. Você poderá explorar este diretório para encontrar as categorias e os ports disponíveis.

Você também poderá navegar para uma categoria específica e ver os ports dentro dela, por exemplo:

$ cd /usr/ports/emulators/ $ ls

Se preferir, você também pode usar a função make search dentro de um diretório específico para procurar por ports. Por exemplo:

$ cd /usr/ports $ make search mame

Lembre-se de que explorar manualmente a árvore de ports pode ser um pouco trabalhoso, e muitas vezes é mais eficiente usar ferramentas de busca online, específicas para o ports, como o FreshPorts.

Freshports oficial: https://www.freshports.org/

Jogos Livres no FreeBSD

Também chamados de “jogos de código aberto” são jogos distribuídos livremente sob uma licença de software livre: GPL, BSD, Apache ou MIT, desenvolvidos, geralmente, por grupos de pessoas ou organizações, conhecidos por Comunidades. Dentro das comunidades, muitos desenvolvedores são voluntários ou entusiastas de jogos eletrônicos.

FreeBSD é conhecido por ser uma distribuição que valoriza o software livre e de código aberto. Portanto, é natural que haja uma variedade de jogos de código aberto para o sistema.

lista de jogos livres ou código aberto para FreeBSD:

Tiro em primeira pessoa (FPS)

Jogo de Tiro (shootemup)

Estrategia (Strategy)

Multijogador (Multiplayer)

Plataforma (Platform)

Corrida (Racing)

Jogo de Representação (RPG)

Simulador (Simulator)

Blocos que Caem (Tetris)

Como instalar jogos usando o gerenciador de pacotes PKG?

O gerenciador de pacotes PKG é a ferramenta padrão para gerenciar pacotes binários no FreeBSD. É usado para instalar (INSTALL), atualizar (UPDATE), listar (LIST) e remover (REMOVE) pacotes de software no sistema. O pkg simplifica o processo de gerenciamento de software, pois, não precisa compilar, permitindo que os usuários instalem e atualizem facilmente aplicativos e bibliotecas.

Exemplos:

$ sudo pkg install minetest

$ sudo pkg install snes9x-gtk

$ sudo pkg install assaultcube

e assim por diante...

Jogos através do Ports Tree

Ports são uma coleção de pacotes de software que permite compilar e instalar aplicativos na plataforma FreeBSD. Essa coleção contém informações necessárias para baixar, extrair, compilar e instalar aplicativos. É composta por mais de 38.487 portais disponíveis (até fevereiro de 2020).

Os ports são uma alternativa para instalações personalizadas e permitem que os usuários interajam diretamente no processo de compilação e configuração do aplicativo. São mais flexíveis e permitem que os usuários entendam o processo de compilação, configuração e geração de binários.

Lista de jogos Completa no Ports, link logo abaixo:

https://cgit.freebsd.org/ports/tree/games

Instalando jogos através do Ports:

1) Instale a Coleção de Ports:

Antes de compilar um aplicativo usando um port, é necessário instalar a Coleção de Ports. Se não foi instalada durante a instalação do sistema operacional FreeBSD, use o comando a seguir para baixar o snapshot comprimido mais recente da Coleção de Ports e do diretório /usr/ports:

Exemplo:

$ portsnap fetch extract

2) Compilação e Instalação:

Após a instalação da Coleção de Ports, você pode compilar e instalar o jogo desejado. Os ports permitem uma instalação mais personalizada, permitindo que os usuários interajam diretamente com o processo de compilação e configuração do jogo.

Exemplos:

$ cd /usr/ports/games/nexuiz/ && sudo make install clean

$ cd /usr/ports/games/widelands/ && sudo make install clean

$ cd /usr/ports/games/minetest/ && sudo make install clean

e assim por diante...

Fliperama no FreeBSD

Também conhecido como Arcade, é uma máquina de jogos eletrônicos ou eletromecânicos projetada para ser operada publicamente em locais como salões de jogos, shopping centers, restaurantes e outras áreas de entretenimento. Ganharam popularidade nas décadas de 1970 e 1980, durante a chamada: “era de ouro dos videogames”.

As máquinas de fliperama apresentam uma variedade de jogos, como: jogos de luta, jogos de tiro, jogos de plataforma e jogos de corrida. E funcionam inserindo moedas ou fichas para desbloquear uma sessão de jogo por tempo limitado.

MAME, além de emular jogos, também emula com precisão e fidelidade os sistemas de hardware das máquinas de fliperama originais, como: processadores, placas de vídeo, som e entradas de controle.

Instalando MAME no FreeBSD

Você não terá dificuldades para instalar o emulador no FreeBSD. Poderá instalá-lo usando gerenciador de pacotes PKG, o Ports ou usando apenas gerenciador de pacotes gráfico, OctoPKG.

Exemplos:

a) usando o gerenciador PKG

$ sudo pkg install mame

b) usando o ports tree

$ cd /usr/ports/emulators/mame/ && sudo make install clean

Apos a instalação do pacote, você precisará criar o arquivo de configuração do MAME manualmente. Esta tarefa precisa ser feita no terminal do seu ambiente gráfico.

Veja o exemplo:

Abra o terminal que acompanha o seu ambiente de trabalho e digite o seguinte comando:

cd ~/.mame && mame -cc

O comando acima não precisa estar logado como Root. Este cria o arquivo de configuração mame.ini no diretório /.mame. Nele, encontram-se os caminhos para: Roms, Cheats, Arts, Samples, Languages, Plugins, etc.

Usando Trapaças (Cheats) no MAME:

Com arquivo de configuração mame.ini criado, poderemos ativar cheats no mame. Abra o arquivo com um editor de textos de sua preferência e siga para opção: CORE MISC OPTIONS. Na linha cheat, mude o valor de 0 (zero) para 1 (um). Pronto!

Para usar cheats no MAME, é necessário baixar o arquivo cheats compactado e colocá-lo numa pasta de mesmo nome (Cheat) no diretório raiz do MAME.

https://www.mamecheat.co.uk/mame_downloads.htm

Depois, abra o emulador e com qualquer jogo rodando, pressione “Tab” e escolha a opção “Cheat”. Em seguida, selecione o cheat que deseja usar e ative-o.

Jogos Retro no FreeBSD

Também conhecidos como retrogaming, são jogos eletrônicos que foram lançados em épocas anteriores, geralmente nas décadas de 1970, 1980 e 1990. São caracterizados por seus gráficos, sons simples e jogabilidade desafiadora.

Tendem a priorizar a jogabilidade e a diversão imediata em vez de gráficos e recursos avançados. São frequentemente associados a consoles clássicos como: Atari 2600, Super Nintendo, Sega Genesis, Sega Master System, Sega Saturn, Sega Dreamcast, Sony PlayStaion One, etc.

Muitos jogos modernos também são projetados para emular o estilo e a sensação dos jogos retro. Esses jogos são conhecidos como “retro-inspired” ou “retro-style” e buscam capturar a essência dos jogos clássicos enquanto incorporam elementos modernos.

Retrogaming pode ser:

Há uma variedade de emuladores retro disponíveis para jogar no FreeBSD, vejamos alguns dos melhores:

Super Nintendo (Snes9x)

a) usando o gerenciador PKG

$ pkg install snes9x-gtk

b) usando o ports tree

$ cd /usr/ports/emulators/snes9x-gtk/ && sudo make install clean

Sega Genesis/MegaDrive (DGen)

a) usando o gerenciador PKG

$ sudo pkg install dgen-sdl

b) usando o ports tree

$ cd /usr/ports/emulators/dgen-sdl/ && sudo make install clean

Nintendo 64 (mupen64plus)

a) usando o gerenciador PKG

$ sudo pkg install mupen64plus

b) usando o ports tree

$ cd /usr/ports/emulators/mupen64plus/ && sudo make install clean

Gamecube & Nintendo Wii (dolphin)

a) usando o gerenciador PKG

$ sudo pkg install dolphin-emu

b) usando o ports tree

$ cd /usr/ports/emulators/dolphin-emu/ && sudo make install clean

Sony PlayStation 2 (pcsx2)

a) usando o gerenciador PKG

$ sudo pkg install pcsx2

b) usando o ports tree

$ cd /usr/ports/emulators/pcsx2/ && sudo make install clean

Sega Dreamcast (reicast)

a) usando o gerenciador PKG

$ sudo pkg install reicast

b) usando o ports tree

$ cd /usr/ports/emulators/reicast/ && sudo make install clean

Sony PlayStation Portavel (ppsspp)

a) usando o gerenciador PKG

$ sudo pkg install ppsspp

b) usando o ports tree

$ cd /usr/ports/emulators/ppsspp/ && sudo make install clean

Jogos Proprietários no FreeBSD

São jogos desenvolvidos e lançados por empresas, estúdios ou desenvolvedores individuais que detêm os direitos exclusivos sobre eles. Essas organizações possuem os direitos de propriedade intelectual e controle total sobre o desenvolvimento, distribuição e comercialização dos jogos.

Geralmente, são desenvolvidos com o objetivo de obter lucro e são vendidos ou disponibilizados para os jogadores mediante pagamento de licenças ou chaves de ativação para serem jogados.

Jogos proprietários costumam ser lançados para plataformas específicas, como: consoles de videogame (Sony PlayStation, Microsoft Xbox, Nintendo Switch) ou sistemas operacionais proprietários: Microsoft Windows e MacOS.

Os jogadores não têm acesso ao código-fonte ou à capacidade de modificar o jogo além das opções oferecidas pelos desenvolvedores.

No FreeBSD há algumas maneiras de rodar jogos proprietários: uma usando o cliente para plataformas de jogos digitais, Steam. A outra é usando o Wine (Mizuma).

a) Steam

É uma plataforma de distribuição de jogos livres e proprietários digitais para computadores pessoais ou móveis, desenvolvida e operada pela empresa estadunidense, Valve Corporation.

A Steam foi lançada no ano de 2003, de lá para cá, se tornou uma das principais plataformas de jogos para PC, oferecendo uma ampla seleção de jogos para compra, download e jogos online.

O objetivo da Steam é fornecer aos jogadores um local centralizado para comprar, gerenciar e jogar títulos populares de grandes desenvolvedoras, jogos independentes e até mesmo jogos desenvolvidos pela própria Valve.

Deixar claro que não há um instalador oficial do Steam para Freebsd, o que vamos utilizar é uma adaptação do Steam Linux (linux-steam-utils) para FreeBSD.

Como instalar Steam no FreeBSD?

a) usando o gerenciador PKG

$ sudo pkg install linux-steam-utils

b) usando o ports tree

cd /usr/ports/games/linux-steam-utils/ && make install clean

B) Mizuma (Wine)

Mizuma é um front-end para o Wine, que é um programa de código aberto que permite executar aplicativos desenvolvidos para o Microsoft Windows em sistemas baseados em Unix, como o FreeBSD. O Mizuma facilita a execução de uma lista de aplicativos do Windows no FreeBSD, fornecendo uma interface gráfica para iniciar esses aplicativos com o Wine. Permite escolher a versão do DXVK durante a instalação do aplicativo.

Você poderá conferir mais sobre o Mizuma no link logo abaixo:

https://codeberg.org/Alexander88207/Mizutamari

Como instalar o Mizuma no FreeBSD?

a) usando o gerenciador PKG

$ sudo pkg install mizuma

b) usando o ports tree

$ cd /usr/ports/games/mizuma/ && sudo make install clean

Como usar o Mizuma para jogar no FreeBSD?

Para usar o Mizuma para jogar jogos no FreeBSD, é necessário instalar o Mizuma e o Wine no sistema operacional. Depois de instalar o Mizuma e o Wine, abra o Mizuma e selecione o jogo que deseja jogar. O Mizuma irá configurar automaticamente o Wine para executar o jogo. Se o jogo exigir configurações adicionais, o Mizuma permitirá que você as configure antes de executar o jogo.

É importante lembrar que nem todos os jogos do Windows funcionarão corretamente no FreeBSD com o Wine, então é necessário verificar a compatibilidade antes de tentar executar um jogo.

REFERÊNCIAS

https://freebsdfoundation.org/freebsd-project/what-is-freebsd/

https://www.midnightbsd.org/about/

https://www.phoronix.com/news/MidnightBSD-3.0-Coming-Soon

https://www.wikihow.com/Add-Cheats-to-MAME

https://docs.freebsd.org/pt-br/books/porters-handbook/pkg-files/

https://docs.freebsd.org/pt-br/books/handbook/ports/

https://www.redalyc.org/journal/5044/504459802011/html/

https://www.sbgames.org/sbgames2012/proceedings/papers/artedesign/AD_Full22.pdf


SilCarlos é técnico em redes de computadores com especialidade em segurança de redes de computadores. Também é estudante de literatura portuguesa. -----------------------
Licença de Cultura livre
Licença Creative Commons
Esta obra está sob a Licença Creative Commons Atribuição 4.0 Internacional