Posted on Leave a comment

Using pods with Podman on Fedora

This article shows the reader how easy it is to get started using pods with Podman on Fedora. But what is Podman? Well, we will start by saying that Podman is a container engine developed by Red Hat, and yes, if you thought about Docker when reading container engine, you are on the right track. A whole new revolution of containerization started with Docker, and Kubernetes added the concept of pods in the area of container orchestration when dealing with containers that share some common resources. But hold on! Do you really think it is worth sticking with Docker alone by assuming it’s the only effective way of containerization? Podman can also manage pods on Fedora as well as the containers used in those pods.

Podman is a daemonless, open source, Linux native tool designed to make it easy to find, run, build, share and deploy applications using Open Containers Initiative (OCI) Containers and Container Images.

From the official Podman documentation at http://docs.podman.io/en/latest/

Why should we switch to Podman?

Podman is a daemonless container engine for developing, managing, and running OCI Containers on your Linux System. Containers can either be run as root or in rootless mode. Podman directly interacts with an image registry, containers and image storage.

Install Podman:

sudo dnf -y install podman

Creating a Pod:

To start using the pod we first need to create it and for that we have a basic command structure

 
$ podman pod create

The command above contains no arguments and hence it will create a pod with a randomly generated name. You might however, want to give your pod a relevant name. For that you just need to modify the above command a bit.

 
$ podman pod create --name climoiselle

The pod will be created and will report back to you the ID of the pod. In the example shown the pod was given the name ‘climoiselle’. To view the newly created pod is easy by using the command shown below:

 
$ podman pod list
Newly created pods have been deployed

As you can see, there are two pods listed here, one named darshna and the one created from the example named climoiselle. No doubt you notice that both pods already include one container, yet we sisn’t deploy a container to the pods yet.
What is that extra container inside the pod? This randomly generated container is an infra container. Every podman pod includes this infra container and in practice these containers do nothing but go to sleep. Their purpose is to hold the namespaces associated with the pod and to allow Podman to connect other containers to the pod. The other purpose of the infra container is to allow the pod to keep running when all associated containers have been stopped.

You can also view the individual containers within a pod with the command:

 
$ podman ps -a --pod

Add a container

The cool thing is, you can add more containers to your newly deployed pod. Always remember the name of your pod. It’s important as you’ll need that name in order to deploy the container in that pod. We’ll use the official ubuntu image and deploy a container using it running the top command.

 
$ podman run -dt --pod climoiselle ubuntu top

Everything in a Single Command:

Podman has an agile characteristic when it comes to deploying a container in a pod which you created. You can create a pod and deploy a container to the said pod with a single command using Podman. Let’s say you want to deploy an NGINX container, exposing external port 8080 to internal port 80 to a new pod named test_server.

 
$ podman run -dt --pod new:test_server -p 8080:80 nginx
Created a new pod and deployed a container together

Let’s check all pods that have been created and the number of containers running in each of them …

 
$ podman pod list
List of the containers, their state and number of containers running into them

Do you want to know a detailed configuration of the pods which are running? Just type in the command shown below:

 
podman pod inspect [pod's name/id]

Make it stop!

To stop the pods, we need to use the name or ID of the pod. With the information from podman’s pod list command, we can view the pods and their infra id. Simply use podman with the command stop and give the particular name/infra id of the pod.

 
$ podman pod stop climoiselle

Hey take a look!

My pod climoiselle stopped

After following this short tutorial, you can see how quickly you can use pods with podman on fedora. It’s an easy and convenient way to use containers that share resources and interact together.

Further reading

The fedora Classrom article https://fedoramagazine.org/fedora-classroom-containers-101-podman/. A good starting point for beginners https://developers.redhat.com/blog/2018/02/22/container-terminology-practical-introduction/. An article on capabilities and podman https://fedoramagazine.org/podman-with-capabilities-on-fedora/. Podman’s documentation site http://docs.podman.io/en/latest/.

Posted on Leave a comment

Amazon AWS Join Blender As Corporate Sponsor

Following quickly on the heels of last months Facebook Sponsorship of Blender, today it was announced Blender has a new corporate sponsor, Amazon AWS. This sponsorship is a bit different, in that it is aimed at improving a very specific aspect of Blender, character animation. The sponsorship will enable Blender to hire multiple developers to work over a period of 3 years on improving character animation tools in Blender.

Details of the announcement from the Blender news:

Today Blender Foundation announced that AWS has joined the Blender Development Fund as a Patron Member to support continued core development and innovation for Blender. AWS committed to a period of three years, specifically to support character animation tools development.

“We’re excited to continue to expand our support for open source solutions for our customers in the digital content creation space.” said Kyle Roche, GM of Creative Tools. “The Blender Foundation has been an industry leader in providing production-grade open source software solutions, and we look forward to helping our mutual customers work more efficiently than ever before through continued improvements in Blender.”

Two years ago, Blender Foundation started a project to redesign and upgrade Blender’s character animation system for the coming decade. Nicknamed “Animation 2020” it has a number of specs that were reviewed by character animator and industry veteran Jason Schleifer, now Creative Director at AWS.

“It has always been my preference to work closely with industry talents on improving Blender,” said Blender chairman Ton Roosendaal. “Thanks to AWS’ support we can recruit additional top developers to help us bring character animation in Blender to new heights.”

Blender Foundation will start recruiting in the course of Q1 2021, pending the current travel and meeting restrictions being lifted or relaxed.

Amazon AWS, or Amazon Web Services is the massive cloud services portion of Amazon, which provides a great deal of the backbone of the modern internet. They also have gaming divisions including owning Twitch, as well as the recently updated Lumberyard game engine. Blender is an open source cross platform 3D application that supports modelling, animation, texturing, rendering, sculpting and more. Improvements to the character animation tools will be a welcome addition. Blender development is supported by the Blender Development Fund.

You can learn more about the Amazon AWS sponsorship in the video below.

[youtube https://www.youtube.com/watch?v=q30Hqe-eDj4?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Unity and Snap Inc Announce New Partnership

Unity Technologies and Snap Inc (parent company of SnapChat) have announced a new partnership. The partnership is a two-fold endeavour, advertising and technology integration.

Details of the advertising partnership from Business Wire:

Starting today, Unity Ads, which reaches a highly engaged mobile gaming audience on both Android and iOS, is now included in the Snap Audience Network (SAN). Snapchat’s SAN advertiser campaigns will now include video inventory from Unity’s extensive network of mobile gaming titles, helping advertisers extend beyond Snapchat. Unity Ads1 reports 22.9B+ monthly global ad impressions, reaching 2B+ monthly active end-users worldwide. In 2020, mobile ad viewers have converted at higher frequencies, with install conversion rates up by 23%2, and mobile gamers installing 84% more apps3.

“Snapchat is all about staying connected with your closest friends, but friendships aren’t just about conversations. They are often also based on shared experiences, which today includes gaming,” said Ben Schwerin, VP of Partnership, Snap Inc. “As gaming has increasingly become a visible part of the Snapchatter journey, it’s also an area that we aim to make easier for retailers and brands to reach Unity’s action-orientated gaming community through their Snapchat campaigns.”

From the same article, we get details on the new Unity integration of Snap technologies:

Available today in the Unity Asset Store, mobile game developers can also now leverage select features of Snap Kit to enhance gameplay and the game discovery experience:

– Snap Kit’s Login Kit allows gamers to use their Snapchat account as a quick way to sign up and log in to games.

– Snap Kit’s Creative Kit extends the experience by allowing users to share their gameplay, decorating still shots or 15-second videos with branded stickers, or attaching an AR lens that has been created with game branding to share with their Snapchat friends. The shares also include referral links back to the game, amplifying discovery and user acquisition for Unity developers to Snapchat’s 249 million daily active users4.

A Bitmoji integration will also be coming in early 2021, and will add a new level of personalization to gameplay. With Bitmoji for Game’s Unity SDK, developers will be able to leverage 3D Bitmoji to create a more immersive experience in games made with Unity. They will be able to bring players’ Bitmoji avatars into the center of gameplay, enabling players to be themselves in games like never before.

The SnapKit integration is already live on the Asset Store. For game developers utilizing Unity Ads, this should be an immediate win as a large group of advertisers are now going to be able to target their ad units, hopefully leading to an increase in revenue. You can learn more about the Unity & Snap partnership in the video below.

[youtube https://www.youtube.com/watch?v=reQsnPh-FOA?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Phaser 3.50 Released

The open source cross platform HTML5 game framework just got a major update, Phaser 3.50. We’ve long been a fan of Phaser, going back to Phaser 2 with our Complete Phaser Game tutorial as well as our Phaser 3 tutorial video. The Phaser 3.50 release is called the single biggest Phaser release yet.

Details from the Phaser blog:

After 13 beta releases, over 200 resolved issues, thousands of lines of new code and the culmination of over 6 months incredibly hard work, Phaser 3.50 is finally here.

It’s not hyperbole or exaggeration when I say that Phaser 3.50 is the single biggest point release ever in the history of Phaser. There are quite literally hundreds of new features to explore, updates to key areas and of course bug fixes. I did actually try counting all the changes, but gave up after I’d reached 900 of them! Thankfully, they are, as always, meticulously detailed in the Change Log. The changes for 3.50 actually grew so large that I had to split them out from the main Change Log and put them into their own file.

However, don’t let this overwhelm you. A massive number of the changes are purely internal and while there are absolutely some API breaking changes in this release (hence the large version number jump), we’ve kept them as sensible as possible. We already know of lots of devs who have upgraded with minimal, or no, changes to their actual game code. We cannot guarantee that for everyone, of course, but depending on how complex your game is, the chances are good.

This release comes with several new examples and all of the existing examples have been audited to guarantee they are compatible with version 3.50. Major new features from Phaser 3.50 include an improved post processing effect pipeline, 3D Mesh game objects, multi texture support, isometric and hexagonal maps directly from Tiled support, Aseprite export support with animations, point lighting game objects and much much more.

Full details of the hundreds of changes in this release can be found in the release notes. Phaser is an open source project under the MIT source license and is available on GitHub. You can learn more about the Phaser 3.50 release in the video below.

[youtube https://www.youtube.com/watch?v=oBjL2GGXJFU?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Video Creator’s VFX Bundle

There is a new Humble Bundle of interest to game developers, the Humble Software Bundle: Video Creator’s VFX. This is a collection of stock footage in mostly HD and 2K formats from ActionVFX with a very reasonable license. As with all Humble Bundles this one is organized into tiers:

1$ Tier

  • Several single item packs including sparks, torches, explosions, glitches, lightning and more

15$ Tier

  • Several more single item packs including AR-15 and pistol fire, matte transitions and brush effects
  • Blood Mist Pack
  • Gun Smoke Pack
  • Sparks Pack
  • Bullet Hit Pack
  • Glitch Transitions Pack
  • Electric and Energy Pack
  • Grunge Overlay Pack
  • Lens Flare Pack

25$ Tier

  • Several more individual effects
  • Ground Bursts Pack
  • Gas Explosion Pack
  • Ground Fire Pack
  • Large Scale Dust Wave Pack
  • Small Scale Smoke Pack
  • Direct Blasts Pack
  • 2x Ink Packs
  • Glitch Overlay Pack
  • Lens Flare Transition Pack
  • Paper Transition Pack
  • Paper Backgrounds Pack

The files in the Video Creator’s VFX bundle are in .mov ProRes format, compatible with most existing video editing software. In the video below we go into more detail of the bundle and include showing some of the assets in action in HitFilm 16 Pro. As with all Humble Bundles, you can decide how your money is allocated between Humble, charity, the publisher and (thanks so much if you do!) to support GFS purchasing using this link.

[youtube https://www.youtube.com/watch?v=PN_X9mr_xpk?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Amazon Lumberyard 1.27 Released

Just two months after the previous release with the updated UI 2.0 and an improved installation process, Lumberyard 1.27 was recently released. Lumberyard is derived from CryEngine and is free to use so long as you use Amazon services (or host your own) for your online component. Yes, that means if you are creating a single player only game, Lumberyard is completely free to use. In this release the new 2.0 and object selection mode are now the defaults greatly improving the user experience. Other improvements in Lumberyard 1.27 include:

  • UI 2.0 General Availability – including more than 75 bug fixes and improvements.
  • NVIDIA Blast Support
    • With Python Asset Builder support to help you create more complicated and expressive KA-BOOMs!
  • Advanced features for NVIDIA Cloth, including complex cloth mesh support and constraints, and performance improvements
  • PhysX is replacing CryPhysics as our physics engine
  • New Gem updates to enhance the Twitch ChatPlay experience
  • Dynamic Content Gem (Cloud Canvas) versioning support
  • Project Configurator – If you have both Visual Studio 2017 and Visual Studio 2019 enabled in the Setup Assistant, you will now be asked which compiler to use when you rebuild your project.

The Lumberyard 1.27 blog post is available here while more comprehensive release notes are available here. Lumberyard can be download for Windows machines here and the source code is available on GitHub. Please note this is NOT an open source project, simply source available. If you want to see the new UI in action, check out Lumberyard 1.27 in the video below.

[youtube https://www.youtube.com/watch?v=q1dq2-T-MdA?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Unity 2020.2 Released

Unity Technologies have just released Unity 2020.2, only the second tech release in 2020. This is part of a new focus on quality over quantity as described on the Unity Blog:

We had plans for 2020. We were going to do things better to make Unity better for you. And we did. We reexamined our priorities. We listened to you. We committed to improving performance and quality of life for all users – so you can bring your vision to life faster.

Unity 2020.2 TECH Stream is packed with all the latest features for those with projects in pre-production, or simply for those who want to leverage the most cutting edge tech to achieve a competitive edge. This version of Unity also ensures a smooth upgrade path forward. To get started, download it here today.

Following up on our promise to improve your development experience, in 2020 we shifted our release philosophy. We prioritized quality over quantity and reduced the number of releases to two per year, giving our engineers an extended stabilization phase. 

Even with the increased focus on Unity 2020.2 there are several improvements in a number of different categories:

There is also an updated schedule of future Unity releases:

Unity Release Schedule
Unity Release Schedule Through 2022

There are more details on the Unity 2020.2 release available here. You can learn more about the Unity 2020.2 release in the video below. In related news, Unity also have a 50% off sale on the Unity Asset Store with an additional 5% off on > $120 purchases with the code GOODBYE2020.

[youtube https://www.youtube.com/watch?v=GM7mDDZalwE?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Ben Cotton: How Do You Fedora?

We recently interviewed Ben Cotton on how he uses Fedora. This is part of a series on the Fedora Magazine. The series profiles Fedora users and how they use Fedora to get things done. Contact us on the feedback form to express your interest in becoming an interviewee.

Who is Ben Cotton?

If you follow the Fedora’ Community Blog, there’s a good chance you already know who Ben is. 

Ben’s Linux journey started around late 2002. Frustrated with some issues on using Windows XP, and starting a new application administrator role at his university where some services were being run on FreeBSD. A friend introduced him to Red Hat Linux, when Ben decided it made sense to get more practice with Unix-like operating systems. He switched to Fedora full-time in 2006, after he landed a job as a Linux system administrator.

Since then, his career has included system administration, people management, support engineering, development, and marketing. Several years ago, he even earned a Master’s degree in IT Project Management. The variety of experience has helped Ben learn how to work with different groups of people. “A lot of what I’ve learned has come from making mistakes. When you mess up communication, you hopefully do a better job the next time.”

Besides tech, Ben also has a range of well-rounded interests. “I used to do a lot of short fiction writing, but these days I mostly write my opinions about whatever is on my mind.” As for favorite foods, he claims “All of it. Feed me.”

Additionally, Ben has taste that spans genres. His childhood hero was a character from the science fiction series “Star Trek: The Next Generation”. “As a young lad, I wanted very much to be Wesley Crusher.” His favorite movies are a parody film and a spy thriller: “‘Airplane!’ and ‘The Hunt for Red October’” respectively. 

When asked for the five greatest qualities he thinks someone can possess, Ben responded cleverly: “Kindness. Empathy. Curiosity. Resilience. Red hair.”

Ben wearing the official “#action bcotton” shirt

His Fedora Story

As a talented writer who described himself as “not much of a programmer”, he selected the Fedora Docs team in 2009 as an entry point into the community. What he found was that “the Friends foundation was evident.” At the time, he wasn’t familiar with tools such as Git, DocBook XML, or Publican (docs toolchain at the time). The community of experienced doc writers helped him get on his feet and freely gave their time. To this day, Ben considers many of them to be his friends and feels really lucky to work with them. Notably “jjmcd, stickster, sparks, and jsmith were a big part of the warm welcome I received.”

Today, as a senior program manager, he describes his job as “Chief Cat Herding Officer”- as his job is largely composed of seeing what different parts of the project are doing and making sure they’re all heading in the same general direction. 

Despite having a huge responsibility, Ben also helps a lot in his free time with tasks outside of his job duties, like website work, CommBlog and Magazine editing, packaging, etc… none of which are his core job responsibilities. He tries to find ways to contribute that match his skills and interests. Building credibility, paying attention, developing relationships with other contributors, and showing folks that he’s able to help, is much more important to him than what his “official” title is. 

When thinking towards the future, Ben feels hopeful watching the Change proposals come in. “Sometimes they get rejected, but that’s to be expected when you’re trying to advance the state of the art. Fedora contributors are working hard to push the project forward.“

The Fedora Community 

As a longtime member of the community, Ben has various notions about the Fedora Project that have been developed over the years. For starters, he wants to make it easier to bring new contributors on board. He believes the Join SIG has “done tremendous work in this area”, but new contributors will keep the community vibrant. 

If Ben had to pick a best moment, he’d choose Flock 2018 in Dresden. “That was my first Fedora event and it was great to meet so many of the people who I’ve only known online for a decade.” 

As for bad moments, Ben hasn’t had many. Once he accidentally messed up a Bugzilla query resulting in accidental closure of hundreds of bugs and has dealt with some frustrating mailing list threads, but remains positive, affirming that “frustration is okay.”

To those interested in becoming involved in the Fedora Project, Ben says “Come join us!” There’s something to appeal to almost anyone. “Take the time to develop relationships with the people you meet as you join, because without the Friends foundation, the rest falls apart.”

Pet Peeves

One issue he finds challenging is a lack of documentation. “I’ve learned enough over the years that I can sort of bumble through making code changes to things, but a lot of times it’s not clear how the code ties together.” Ben sees how sparse or nonexistent documentation can be frustrating to newcomers who might not have the knowledge that is assumed.

Another concern Ben has is that the “interesting” parts of technology are changing. “Operating systems aren’t as important to end users as they used to be thanks to the rise of mobile computing and Software-as-a-Service. Will this cause our pool of potential new contributors to decrease?”

Likewise, Ben believes that it’s not always easy to get people to understand why they should care about open source software. “The reasons are often abstract and people don’t see that they’re directly impacted, especially when the alternatives provide more immediate convenience.”

What Hardware?

For work, Ben has a ThinkPad X1 Carbon running Fedora 33 KDE. His personal server/desktop is a machine he put together from parts that runs Fedora 33 KDE. He uses it as a file server, print server, Plex media server, and general-purpose desktop. If he has some spare time to get it started, Ben also has an extra laptop that he wants to start using to test Beta releases and “maybe end up running rawhide on it”.

What Software?

Ben has been a KDE user for a decade. A lot of his work is done in a web browser (Firefox for work stuff, Chrome for personal). He does most of his scripting in Python these days, with some inherited scripts in Perl.

Notable applications that Ben uses include:

  • Cherrytree for note-taking
  • Element for IRC
  • Inkscape and Kdenlive when he needs to edit videos.
  • Vim on the command line and Kate when he wants a GUI
Posted on Leave a comment

Blender 2.92 Geometry Nodes

Hot on the heels of the Blender 2.91 release, Blender 2.92 is currently in Alpha and one of the most exciting new features is Geometry Nodes. Part of the everything as nodes strategy for future Blender development, the addition of geometry nodes will add procedural capabilities to Blender without requiring programming or scripting. Before the 2.92 alpha, Geometry Nodes were a separate branch with the project page available here.

When using Geometry Nodes, you are can create or modify geometry in your Blender scene using the new Geometry Node Editor. The process is very similar to the current way Shaders and Cycles materials are constructed. The selection of nodes are documented in the manual, however most descriptions are pretty sparse at this point. If you want to get started with nodes you need to run Blender 2.92 or later. Until it is formally released, the best place to get alpha and beta Blender releases is here.

There are two example projects to get you started. The best one currently is this one which shows how to use nodes to scatter rocks across your scene. There is another project that will showcase how to procedurally create a tree, however this project is currently just a place holder.

You can learn more about Blender 2.92 and Geometry Nodes in the video below.

[youtube https://www.youtube.com/watch?v=IDoWONJ1e_w?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Facebook Sponsor The Godot Game Engine

The Godot Game Engine have just been sponsored by Facebook Reality Labs. It comes in the form of a grant that is funding future XR (Virtual Reality/Augmented Reality) development. As a direct response to this grant, Bastiaan Olij is now going to be hired full time starting early 2021. In addition to being the lead developer on the Godot VR efforts, Bastiaan also worked on GDNative and other core Godot contributions. He also runs a very solid Godot technical YouTube channel available here.

Some details of the work he will be performing from the Godot news announcement:

  • OpenXR implementation for desktop and mobile. OpenXR is the new open standard for XR (Extended Reality, encompasses Advanced Reality (AR) and Virtual Reality (VR)). The OpenXR specification reached version 1.0 in 2019, and now has multiple conformant implementations by major XR players (Oculus, Microsoft, Valve, and more!). As an open source, cross-platform and vendor neutral game engine, we’re thrilled by the support that IHVs are giving to OpenXR and want to rely on it as our main interface.
  • Extending Godot’s input action system to support VR specific actions across all devices based on their respective capabilities (hand tracking, controller sensors, buttons).
  • Adapt the XR plugin system to the new Vulkan renderer design. While Godot 3.2’s XR support is functional, the upcoming Godot 4.0 release changes all the rendering backend and needs work to make XR functional again.
  • Implement Vulkan rendering on Android. This is necessary for mobile VR devices such as Oculus Quest 2, and will benefit all Godot users who want to make Android games.
  • Various rendering optimizations:
    • Stereoscopic rendering enhancements, providing details about the eye for which an image is rendered.
    • Support for compositor layers, which make it possible to render e.g. UI as an overlay without going through the eye buffer with lens distortion, allowing for sharper and more stable UI.
    • Support for variable rate shading in Vulkan, providing performance gains with techniques such as foveated rendering.
    • Rendering optimizations for mobile, implementing alternative techniques to the ones suitable on desktop platforms for better mobile performance.

This Godot Engine sponsorship from Facebook is their second in less than a month. In November it was announced that Facebook had become corporate sponsors of the open source Blender development fund. Even if you aren’t a big fan of Facebook, this investment in the Godot engine should be a win for everyone. You can learn more about the grant in the video below.

[youtube https://www.youtube.com/watch?v=NNHyorGxwyU?feature=oembed&w=1500&h=844]