Language Selection

English French German Italian Portuguese Spanish

About Tux Machines

Thursday, 13 Aug 20 - Tux Machines is a community-driven public service/news site which has been around for over a decade and a half and primarily focuses on GNU/LinuxSubscribe now Syndicate content

Search This Site

Quick Roundup

Type Title Author Replies Last Postsort icon
Story Devices With Linux, Mostly Raspberry Pi Roy Schestowitz 1 13/08/2020 - 6:01pm
Story Programming Leftovers Roy Schestowitz 13/08/2020 - 5:56pm
Story Software: FreeCAD, Text Editors, Man-Pages and Kiwi TCMS Roy Schestowitz 13/08/2020 - 5:47pm
Story Linux Kernel: GPU Blobs, 5.8, 5.9 and ARM32 in Action Roy Schestowitz 13/08/2020 - 5:43pm
Story Laravel for Programming (New Series) Roy Schestowitz 1 13/08/2020 - 5:19pm
Story The Linux-based PinePhone is the most interesting smartphone I've tried in years Roy Schestowitz 13/08/2020 - 5:13pm
Story tdoay's howtos Roy Schestowitz 13/08/2020 - 5:11pm
Story KDE's 20.08 Apps Updates: New Features land in Dolphin, digiKam, KStars, Konsole and More Roy Schestowitz 3 13/08/2020 - 5:08pm
Story QEMU 5.1.0 released Roy Schestowitz 13/08/2020 - 5:00pm
Story Announcement of LibreOffice 6.4.6 Roy Schestowitz 2 13/08/2020 - 4:54pm

Devices With Linux, Mostly Raspberry Pi

Filed under
GNU
Linux
Hardware
  • Terminal Zero: Building the Ultimate Raspberry Pi Zero Computer

    The new edition has no keyboard in favor of a touchscreen interface. The case is custom designed and no only has a huge selection of ports to access but also additional buttons. The unit is completely wireless, using a LiPo battery for power. There's a small speaker inside but you can also use headphones via a 3.5mm jack.

  • Will This Speed up Your Raspberry Pi Browsing by up to 1200%?

    Puffin manages these incredible speeds because the content is rendered remotely on their encrypted cloud servers. A JavaScript engine is used to pre-process and compress web pages before they arrive at your screen. This can be interpreted as a proxy server by some sites, and may affect the content that is available to you.

  • Odroid H2 as ventilator cooling ventilation airmachine

    finally summer and climate change have both reached Europe and had several weeks of 30 C straight…

    without ventilation, anything above 30 is just “too much to think” (so maybe the brain CPU also would need active cooling?)

    of course the user could buy a fan online… or try to use CPU fans to do the job

  • Track your punches with Raspberry Pi
  • Garage Minder

    A Raspberry Pi Zero W is used to open and close the garage door. I did not have a convenient outlet to plug in a power supply for the Pi. So my Pi gets its power from the existing garage opener control wiring for the wall button. Typically, there is 24 volt AC available here, though it may be a lower voltage in older openers. A Buck converter down-regulates this voltage to 5 v DC. A battery allows the Pi to continue when the wall button is momentarily pressed, and the power is shorted out. We need two diodes so that the forward drop (1.4v) stops the 6v battery from continuously discharging into the 5v power supply. The battery is barely used, so it should last for a long time. If an outlet is conveniently available, then a regular 5v micro USB charger can be used.

Programming Leftovers

Filed under
Development
  • Go filesystems and file embedding

    The Go team has recently published several draft designs that propose changes to the language, standard library, and tooling: we covered the one on generics back in June. Last week, the Go team published two draft designs related to files: one for a new read-only filesystem interface, which specifies a minimal interface for filesystems, and a second design that proposes a standard way to embed files into Go binaries (by building on the filesystem interface). Embedding files into Go binaries is intended to simplify deployments by including all of a program's resources in a single binary; the filesystem interface design was drafted primarily as a building block for that. There has been a lot of discussion on the draft designs, which has been generally positive, but there are some significant concerns.

    Russ Cox, technical lead of the Go team, and Rob Pike, one of the creators of Go, are the authors of the design for the filesystem interface. Cox is also an author of the design for file embedding along with longtime Go contributor Brad Fitzpatrick. Additionally, Cox created YouTube video presentations of each design for those who prefer that format (the filesystem interface video and the file-embedding video).

  • a Piece of Note on Unicode Encoding for CJK characters (with my simple Caesar encoding script)
  • Plasmoid with C++

    So the goal is pretty simple, and all I have to do is to find a way to share information from KClock to the plasmoid. However the solution isn’t that trivia. As it turned out, DBus is perferred for IPC(Inter-process communication). Before start working on plasmoid, I need to expose some of the class of KClock to DBus first. Since KClock is built upon Qt, I choose to using Q-DBus as it will save a lot of effort than using low level interface. Now the problem is - I don’t know how to use Q-DBus. As usual, I went to the Qt documentation and to my surprise, it spent most content to describe the concept of DBus and compared to Qt’s signal/slot machinism. Although useful as it is, lack of examples meaning I still didn’t know how I can use it in my code. Thankfully, KDE has its own tutorial about DBus and it provides multiple examples. You can find it here.

  • How to use printf to format output

    When I started learning Unix, I was introduced to the echo command pretty early in the process. Likewise, my initial Python lesson involved the print function. Picking up C++ and Java introduced me to cout and systemout. It seemed every language proudly had a convenient one-line method of producing output and advertised it like it was going out of style.

  • Ceph – the practical storage solution for companies of all sizes

    Ceph was conceived by Sage A. Weil, who developed it while writing his dissertation and published it in 2006. He then led the project with his company Intank Storage. In 2014, the company was acquired by RedHat, with Weil staying on as the chief architect, in charge of the software’s development.

    Ceph only works on Linux systems, for example CentOS, Debian, Fedora, RedHat/RHEL, OpenSUSE, and Ubuntu. Accessing the software through Windows systems cannot be done directly, but is possible through the use of iSCSI (Internet Small Computer System Interface). As such, Ceph is particularly suitable for use in data centers that make their storage space available over servers, and for cloud solutions of any kind that use software to provide storage.

    We have complied a list of the most important features of Ceph: [...]

  • "Structural pattern matching" for Python, part 1

    We last looked at the idea of a Python "match" or "switch" statement back in 2016, but it is something that has been circulating in the Python community both before and since that coverage. In June it was raised again, with a Python Enhancement Proposal (PEP) supporting it: PEP 622 ("Structural Pattern Matching"). As that title would imply, the match statement proposed in the PEP is actually a pattern-matching construct with many uses. While it may superficially resemble the C switch statement, a Python match would do far more than simply choose a chunk of code to execute based on the value of an expression.

  • Federico Mena-Quintero: "Rust does not have a stable ABI"

    These are extremely valid concerns to be addressed by people like myself who propose that chunks of infrastructural libraries should be done in Rust.

    So, let's begin.

    The first part of this article is a super-quick introduction to shared libraries and how Linux distributions use them. If you already know those things, feel free to skip to the "Rust does not have a stable ABI" section.

Software: FreeCAD, Text Editors, Man-Pages and Kiwi TCMS

Filed under
Software

  • Checking out FreeCAD

    Our look at running a CNC milling machine using open-source software led me to another tool worth looking at: FreeCAD. I wasn't previously familiar with the program, so I decided to check it out. In this article I will walk through my experiences with using FreeCAD for the first time to do a variety of CNC-related tasks I normally would have used a commercial product for. I had varying degrees of success in my endeavors, but in the end came away with a positive opinion.

    FreeCAD is an LGPL v2+ licensed CAD and CAM program written in Python and C++. The first release of the project was in 2002, and its last stable version 0.18.4 was released in October 2019. The project's GitHub page indicates that it has 271 contributors with new commits happening often (generally more than 50 a week). Beyond code contributions, FreeCAD has a welcoming community with active forums to answer any questions users might have along the way. FreeCAD is designed to be cross-platform, supporting Linux, macOS, and Windows, with binary releases provided by the OS-independent package and environment management system Conda.

    I decided to take on a relatively simple CNC project: milling a new street-address sign for my home. The plan called for a 700mm x 150mm sign, and I decided to mill it out of a plank of maple wood. The design I have in mind is pretty straightforward, so it should be a great way to put FreeCAD through a test on a real project. I also looked at using FreeCAD for taking existing models that are available online with an open license and importing them for milling (in this case, a wooden spoon).

    It is worth noting that before this effort I had never used FreeCAD before. My personal goal is to become fluent enough with FreeCAD that I can replace my dependence on the commercial CAD software I presently use in my design work. The goal of this article, however, is to share what my experience with FreeCAD was, and provide a glimpse of FreeCAD from the perspective of an inexperienced user.

  •         

  • 9 Best Emacs-Like Text Editors

    Over the years, one of the most emotive areas in the world of Linux is the choice of text editor. Some people are strong advocates of Vim, others prefer Emacs. And there’s tons of other text editors available with strong backing. Having robust opinions is the way the land lies in Linux.

    Emacs has a long and revered history. The original program was written in 1976 as a set of macros for an existing text editor called TECO. Emacs originally was an acronym for Editor MACroS, unifying the many TECO command sets and key bindings. TECO is both a character-oriented text editor and an interpreted programming language for text manipulation.

    Emacs has come a long way since 1976. It offers a robust Lisp interpreter that is hugely extensible and hackable. It brought to light lots of novel concepts such as an infinite clipboard, tree-based exploration of history, a reverse variable search, structural editing of code, and recursive editing that let you stop what you are doing, perform other edits, and then revert back to the original task.

    Emacs is an incremental programming environment, a mutable environment that provides functionality without applications.

  •        

  • Michael Kerrisk (manpages): man-pages-5.08 is released

    I've released man-pages-5.08. The release tarball is available on kernel.org. The browsable online pages can be found on man7.org. The Git repository for man-pages is available on kernel.org.

    This release resulted from patches, bug reports, reviews, and comments from more than 30 contributors. The release includes more than 190 commits that change around 340 pages.

  • QGIS has chosen Kiwi TCMS

    We are happy to announce that QGIS has chosen Kiwi TCMS for the basis of their Quality Assurance methodology and infrastructure improvement program! Kiwi TCMS will play a central role in storing test case definitions, organizing test cycles, and assigning and tracking test executions by testers from the QGIS community.

Linux Kernel: GPU Blobs, 5.8, 5.9 and ARM32 in Action

Filed under
Linux
  • Netgpu and the hazards of proprietary kernel modules

    On its face, the netgpu patch set appears to add a useful feature: the ability to copy network data directly between a network adapter and a GPU without moving it through the host CPU. This patch set has quickly become an example of how not to get work into the kernel, though; it has no chance of being merged in anything like its current form and has created a backlash designed to keep modules like it from ever working in mainline kernels. It all comes down to one fundamental mistake: basing kernel work on a proprietary kernel module.
    The use case for netgpu appears to be machine-learning applications that consume large amounts of data. The processing of this data is offloaded to a GPU for performance reasons. That GPU must be fed a stream of data, though, that comes from elsewhere on the network; this data follows the usual path of first being read into main memory, then written out to the GPU. The extra copy hurts, as does the memory-bus traffic and the CPU time needed to manage this data movement.

    This overhead could be significantly reduced if the network adapter were to write the data directly into the GPU's memory, which is accessible via the PCI bus. A suitably capable network adapter could place packet data in GPU memory while writing packet headers to normal host memory; that allows the kernel's network stack to do the protocol processing as usual. The netgpu patch exists to support this mode of operation, seemingly yielding improved performance at the cost of losing some functionality; anything that requires looking at the packet payload is going to be hard to support if that data is routed directly to GPU memory.

  • Some statistics from the 5.8 kernel cycle

    Linus Torvalds released the 5.8 kernel on August 2, concluding another nine-week development cycle. By the time the work was done, 16,306 non-merge changesets had been pulled into the mainline repository for this release. That happens to be a record, beating the previous record holder (4.9, released in December 2016) by 92 changesets. It was, in other words, a busy development cycle. It's time for our traditional look into where that work came from to see what might be learned.

    A total of 1,991 developers contributed to 5.8, which is another record; 304 of those developers appeared for the first time in this cycle. The community added over 924,000 lines of code and removed around 371,000 for a net growth of over 553,000 lines of code.

  • FUSE Read/Write Passthrough Updated For Much Better File-System Performance

    Of various criticisms around FUSE for implementing file-systems in user-space, one of the most prolific issues is around the performance generally being much lower than a proper file-system kernel driver. But with the FUSE passthrough functionality that continue to be worked on, there is the potential for much better FUSE file-system performance.

    The ongoing FUSE passthrough work is about allowing the passthrough read/write of files in avoiding at times unnecessary overhead of the user-space FUSE daemon. When operating in FUSE_PASSTHROUGH mode, the daemon can allow on a per-file basis opening in passthrough mode where all read and write operations are forwarded by the kernel directly to the lower file-system rather than to the FUSE daemon running in user-space.

  • Navi 2 Fixes, Other Graphics/Display Fixes Sent In For Linux 5.9

    Following all of the feature updates to the open-source GPU/DRM drivers for Linux 5.9 that included a lot of new material, the first batch of fixes have now been sent in for mainline in addressing early fallout from these many changes.

    Ahead of the Linux 5.9-rc1 release this weekend, an initial batch of Direct Rendering Manager fixes were sent out on Thursday.

  • How the ARM32 Linux kernel decompresses

    This is intended as a comprehensive rundown of how the Linux kernel self-decompresses on ARM 32-bit legacy systems. All machines under arch/arm/* uses this method if they are booted using a compressed kernel, and most of them are using compressed kernels.

  • Walleij: How the ARM32 Linux kernel decompresses

    For those who are into the details: here is a step-by-step guide through the process of decompressing an Arm kernel and getting ready to boot from Linus Walleij.

The Linux-based PinePhone is the most interesting smartphone I've tried in years

Filed under
Gadgets

Android's potential for customization was seemingly endless when it was first introduced, thanks to its Linux kernel and open-source nature. However, Google has introduced more restrictions over the past few years in the name of privacy and security, making root and other deep modifications difficult or impossible. While I agree that most of the security changes in Android are needed (I really don't need the Facebook app digging through my local files), they do mean you are not in full control of your own device.

There's still the option of using custom ROMs like LineageOS and Paranoid Android, but they're still limited by the restrictions of Android. Porting ROMs to new phones is a time-consuming and difficult process, they sometimes lack features compared to the stock software (like full camera quality), and some devices don't allow unlocking the bootloader at all.

Thankfully, there's now an alternative to Android for enthusiasts who want full control over their phone: the PinePhone, a budget device developed by Pine64 and supported by the Linux community. Despite its many (many, many) limitations, the PinePhone is still the most interesting phone I've used in years.

Read more

QEMU 5.1.0 released

Filed under
Software

  • QEMU version 5.1.0 released

    We’d like to announce the availability of the QEMU 5.1.0 release. This release contains 2500+ commits from 235 authors.

  • QEMU 5.1.0 released

    Version 5.1.0 of the QEMU processor emulator is out. "This release contains 2500+ commits from 235 authors." Enhancements consist mostly of additional hardware emulation, of course, but it doesn't stop there; see the changelog for lots of details.

  • QEMU 5.1 Release Brings Many Improvements To This Open-Source Virtualization Component

    QEMU 5.1 is now available for this important piece of the open-source Linux virtualization stack.

    There are plenty of changes across the board with QEMU 5.1 while some of the highlights standing out include:

    - Support for live migration on AMD EPYC systems with nested virtualization.

    - Persistent Memory Region (PMR) support from the NVMe 1.4 specification.

Norbert Preining: Switching from KDE/Plasma to Gnome3 for one week

Filed under
KDE
GNOME

Honestly, I can’t agree more. I have tried Gnome3 for over a year, again and again, and it feels like a block of concrete put onto the feet of dissidents by Italian mafia bosses. It drowns and kills you.

Read more

KDE's 20.08 Apps Updates: New Features land in Dolphin, digiKam, KStars, Konsole and More

Filed under
KDE
Software

The updates to KDE apps released today are many, contain a wide array of changes, and cover an impressive number of applications.

Dolphin, KDE's file explorer, for example, adds previews for more types of files and improvements to the way long names are summarized, allowing you to better see what each file is or does. Dolphin also improves the way you can reach files and directories on remote machines, making working from home a much smoother experience. It also remembers the location you were viewing the last time you closed it, making it easier to pick up from where you left off.

Read more

Intel Graphics and oneAPI

Filed under
Hardware
  • Intel Offers New Xe Graphics Details, Product Updates At 2020 Architecture Day

    This week Intel held their 2020 Architecture Day, albeit virtual due to the COVID-19 pandemic. A lot of interesting technical information was shared on both the hardware and software sides. Here are some of the interesting highlights.

  • Intel Is Using IGC In Their Windows Drivers, Internal Prototype For Mesa

    At Intel's Architecture Day this week the company was talking about work on their new Windows graphics driver that is being timed for Xe but supporting existing generations of hardware as well. One of the interesting takeaways was seeing the Windows driver is now using the open-source "IGC" back-end.

  • Intel oneAPI 1.0 "Gold" Is Coming Later This Year

    Recently I wrote about it looking like oneAPI 1.0 was lining up and now there is further confirmation of the first production release of this Intel software collection indeed coming this year.

    After oneAPI was announced in late 2018 at Intel's Architecture Day, it was released in early form last year and the various software components making up this collection of interfaces to exploit the potential of Intel's diverse hardware offerings have continued to advance.

Laravel for Programming (New Series)

Filed under
Development
  • Why Should I Use Laravel Framework
  • Composer Error while installing Laravel “Failed to decode response: zlib_decode(): data error
  • Mysql update or insert multiple rows – Raw Laravel SQL
  • Laravel update model with unique validation rule for attribute

    I have a Laravel User model whre I added unique validation rule on username and email. Now when I update my User through my Repo, and I want to re-validate my model, I get an error.

  • Laravel – Eloquent “Has”, “With”, “WhereHas”

    with() is generally used with eager loading, which is a quick way to pull related models. Basically, it means that, along with the main model, Laravel will preload the listed relationship(s). This is beneficial when you need to load additional data and want to avoid making N+1 DB bad practices. With eager loading, you run only one additional DB query instead of potentially hundreds of additional queries.

  • Getting a 500 Internal Server Error on Laravel 5+ Ubuntu 14.04

    This is the first time I am installing Laravel on Ubuntu and I am already running into issues, 500 errors. I have done it before, numerous times on Windows OS and never had an issue.

    This 500 internal server usually happens when your “mod_rewrite” module is not turned on.

  • Ajax Laravel 419 POST Error

    I would really be thankful if someone could help me with this. I am trying to make an Ajax call but I am getting 419 POST error.

  • Creating a Radio Button Input Field

    You want to create a radio button field for your Blade template.

  • Decoding HTML Entities to a String
  • 13 Best Laravel Helpers To Consider Using

    Laravel comes with a ton of useful global helper functions. If you haven’t used them so far, this is the best time to start. Over the years of me using the Laravel, 10 of those emerged as the most useful, making the development a lot easier. Sometimes we don’t really see how we can apply some methods until we see an example. So let’s get down to it and see the top 10 helpers I often use the most.

    These go for Laravel 5.*, however those on Laravel 6.* can bring these back using the following package https://github.com/laravel/helpers.

    You can also check out the official documentation for all laravel helper functions.

  • How to use Laravel with Socket.IO

    Websockets are cool. They are really helpful if you want to show real-time activities from your users (or perhaps some queue jobs).

    Now, if you are afraid of the word “Websockets”, don’t be. I will lay down the instructions on how you can use it and will be around to answer your questions if you need to.

    I had this challenge where I needed it to show a list of people who are currently viewing a specific URL in Laravel. So I started thinking. Part of me wanted to do a quick hack (luckily that’s not the strongest side of mine). Whilst the other wanted to build something cool, reusable and long-lasting.

  • Guide To Injecting Dependencies Into Controllers

    Laravel’s facades present a simple interface to the most useful classes in Laravel’s codebase. You can get information about the current request and user input, the session, caches, and much more.

    But if you prefer to inject your dependencies, or if you want to use a service that doesn’t have a facade, you’ll need to find some way to bring instances of these classes into your controller.

    All controller methods (including the constructors) are resolved out of Laravel’s container, which means anything you typehint that the container knows how to resolve will be automatically injected.

  • How to Upload Multiple Files via Ajax (VueJs and Laravel 5.5) - File Management

    When I first started using VueJs, it was a nightmare to find a decent tutorial on how to upload a single file using Ajax, let alone a tutorial explaining how to manage multiple files.

    I have been dealing a couple of years with file management, mostly using VueJs and Laravel, so I thought writing a tutorial like this could help a lot of developers implement one of the coolest things in applications, which is real-time asset management.

    First off, you will find many solutions online that are good but those who are early beginners will definitely struggle.

    What I will cover here is writing your frontend and backend code that will allow you to upload multiple files. Additionally, I will give you a few tricks on how to apply this stuff to different situations.

Kali Linux and Pentesting

Filed under
GNU
Linux
Security
  • Kali Linux USB Sticks

    The main aspiration of the Kali Linux bootable USB device is to serve the purpose of initiating live Kali Linux. Its essence is to provide the portability of Kali Linux, and you can carry it with you inside of your pocket. It assists in running your kali Linux in any system available near you, making kali Linux accessible to you at your accord. One of the main vantage that it provides is the customize feature. You are free to customize your very own operating system to carry it in the Kali Linux USB stick. The user just needs to follow the procedure to customize its OS image on the kali Linux USB stick. It is very system friendly, imposing no harm to the system you install it in. You just need to plug out the USB drive to get back to the original operating system of the host. Every model of kali Linux USB stick has a different chipset, making dongles compatible with the overall Kali Linux. It is rarely possible to get all features in a single USB stick as some are focused on size, while others are based on the reading/ writing cycles and speed. Here is the buying guide that can help you in selecting the best USB stick compatible with your system needs depending on its usage.

  • KALI LINUX DNS RECONNAISSANCE

    DNS Reconnaissance is an information-gathering part for a penetration testing. It is used where penetration testing is being performed. It can gather and collect all types of information on the records and target server. It does not affect any IP addresses; therefore, it is best to use for checking on or disclose the information of any network. This is only possible for those networks or organizations that do not check upon the DNS traffic. So, the types of enumeration that perform include zone transfers reverse lookups domain and host brute force standard record, enumeration, catch snooping, zoom working, and also Google Luca.

  • Metasploit in Kali Linux 2020

    The internet is full of lurkers with malicious intents who want to access networks and exploit their data while evading detection. It only makes sense to ensure a network’s security by measuring their vulnerabilities. Penetration testing or ethical hacking is how we test networks or servers for pregnable targets by pinpointing all possible breaches that a hacker might use to gain access, thus reducing security compromises. Penetration testing is often conducted through software applications, the most popular of which is Kali Linux, preferably with the Metasploit framework. Stick till the end to learn how to test a system by executing an attack with Kali Linux.

  • Post exploitation with Meterpreter

    This is an introduction to the Meterpreter payload plugin within Metasploit. In this short tutorial, we will discuss how to use it to apply post exploitation to a WINDOWS OS system once you’ve already breached it using the Eternalblue exploit. We will limit ourselves to accessing the windows system and exploring it, and all the things that we are going to do will focus on accessing information and user credentials.

    Introduction to Meterpreter

    Meterpreter is an attack payload in the Metasploit framework that lets the perpetrator control and navigate the victim computer through a command shell. It can prove to be a very versatile tool when it comes to penetration testing. It is a post-exploitation tool that is based on in-memory DLL injection, meaning it gets the injected DLL running by creating a new process that calls for the system to run the injected DLL. It can give you access to an invisible command shell on a victim machine, letting you run executables and profile networks.

    It was originally written for Metasploit 2.x and is upgraded for Metasploit 3.

  • Pen testing web applications with Metasploit’s “Wmap scanner”

    “Scanning” involves all methods and techniques for identifying live systems like networks or servers to uncover its operating system and architecture. These techniques are used to identify any vulnerable points in a network that can be exploited.

    This is a beginner’s tutorial on using the WMAP plugin incorporated in the Metasploit framework to scan for vulnerabilities in web applications. We will use the web application DVWA as a target to demonstrate the scanning process done using WAMP. DVWA is short for “damn vulnerable web application,” and the app is specially designed to used by cybersecurity novices to test and sharpen their penetration skills.

Python Leftovers

Filed under
Development
  • sphinxcontrib-spelling 5.2.1

    sphinxcontrib-spelling is a spelling checker for Sphinx-based documentation. It uses PyEnchant to produce a report showing misspelled words.

  • Python Community Interview With Bruno Oliveira

    Welcome to Real Python, Bruno. I’m glad you could join us. Let’s start in the same manner we do with all our guests: How’d you get into programming, and when did you start using Python?

  • How to use AJAX with Django

    AJAX is an acronym for Asynchronous JavaScript and XML. It is a group of inter-related technologies like JavaScript, DOM, XML, HTML, CSS etc. AJAX allows you to send and receive data asynchronously without reloading the web page.

    At some point in your project development process, you will need AJAX to execute some task. One fine example could be checking username availability on the signup form.

    We will discuss the same scenario here and will guide you through the step by step process of using AJAX with Django.

  • How to create management commands in Django

    You must have used createsuperuser command in your Django application at one or another time. If not then I am sure you must have used makemigrations or migrate commands in your project. Yes? Yes.

    So these commands, also called as management commands are used to execute some piece of code from the command line.

    In this article, We will see how to create your own command.

  • Python Development Environment on macOS Mojave & High Sierra

    While installing Python and Virtualenv on macOS Mojave & High Sierra can be done several ways, this tutorial will guide you through the process of configuring a stock Mac system into a solid Python development environment.

  • How to Learn Python for Data Science In 5 Steps

    Before we explore how to learn Python for data science, we should briefly answer why you should learn Python in the first place.

    In short, understanding Python is one of the valuable skills needed for a data science career.

    Though it hasn’t always been, Python is the programming language of choice for data science.

  • Conservancy and PyPy's great work together

    PyPy joined Conservancy in the second half of 2010, shortly after the release of PyPy 1.2, the first version to contain a fully functional JIT. In 2013, PyPy started supporting ARM, bringing its just-in-time speediness to many more devices and began working toward supporting NumPy to help scientists crunch their numbers faster. Together, PyPy and Conservancy ran successful fundraising drives and facilitated payment and oversight for contractors and code sprints.

    Conservancy supported PyPy's impressive growth as it expanded support for different hardware platforms, greatly improved the performance of C extensions, and added support for Python 3 as the language itself evolved.

  • A new chapter for PyPy: Transitioning away from a Charitable Model

    PyPy has been a member project of Software Freedom Conservancy since 2010 and although it's been a mutually successful partnership, nothing lasts forever — especially in software. Today, Conservancy and PyPy announce that they are winding down their ten year relationship. PyPy will remain free software, but the community's structure and organizational underpinnings will change. Conservancy provides a fiscal and organizational home for projects that find the freedoms and assurances that come along with a charitable home advantageous for their community goals. While this framework was a great fit for the early PyPy community, that community has changed such that this is no longer the case. PyPy's leadership are exploring non-charitable options for its next phase of growth.

  • PSF GSoC students blogs: Week 9
  • PSF GSoC students blogs: Week 11 Check in!
  • PSF GSoC students blogs: Weekly Check In - 10

Games: Android, GNU/Linux and New Titles

Filed under
Gaming
  • How to Find New and Exciting Games to Play on Android
  • 16 of the Best Free Games For Linux

    “Free” and “Linux” go hand in hand beautifully, like chips and a milkshake, and even though Linux isn’t widely seen as a gaming platform, there is a veritable wealth of free games you can get for it if you look in the right places. That’s in large part thanks to unpaid, open-source developers, who collaborate to bring classics (and new games) all together in Linux.

  • Quirky comedy point and click adventure 'Sol 705' is out now for Linux PC

    Sol 705, a point and click adventure that pays homage to the classics from the likes of Lucas Arts, Sierra is out now and it's added Linux PC support too.

    Developed by Land Patricio and Space Indie Studios, it appears this is a crowdfunded title that slipped through the cracks as we completely missed the successful Kickstarter from 2018 where the developer pulled in over ten thousand dollars. While it's designed like the classics, it does have plenty of modern touches from a hint system to voice acting for some of the seriously varied cast.

  • The Bomber Crew team announced Space Crew and it's coming to Linux PC

    Did you enjoy Bomber Crew? Runner Duck's strategic simulation game was a wonderful release from 2017 and they're now going aiming to go further with Space Crew.

    This was actually announced back in June, although at that point the platforms it was launching on was not confirmed. Towards the end of July, I spotted Linux appearing in the system requirements and today the developer emailed back with a firm confirmation, "Yes, we are planning on Space Crew supporting Linux at launch.".

  • Religion creation auto-battler Godhood has launched after a rough time for Abbey Games

    After going through funding and development troubles, Abbey Games have now launched the 1.0 release of their religion creation auto-battler Godhood.

    Quite a relaxing and laid-back experience that blends together a little bit of many things. You construct a religion, build up a little town and engage in hands-off turn-based battles that do everything for you so you get to sit back and watch how it all unfolds. Quite a different take on the auto-battling seen in the likes of Dota Underlords that's for sure.

  • The free Rise of Avalon expansion for Albion Online is live

    Free to play and now much bigger, Albion Online has a brand new expansion out with Rise of Avalon and there's lots of new goodies to play through.

    One of the biggest additions to Albion Online since it began, this brings the Roads of Avalon, a big network of magical pathways that bring new ways to travel, transport and engage in combat allowing you to explore the Wilderness of Avalon. Another huge addition are Corrupted Dungeons, giving Solo players something fun that mixes PvE and PvP invasions together in randomized dungeons. There's also fifteen powerful new Avalonian weapons to find.

  • Streets of Rogue gets a big bug-fix update as work continues on a sequel

    Streets of Rogue, one of my absolute favourite indie games has a new update out as work continues to find and fix every possible bug, plus a few new bits were added.

    Before getting into the juice of the update though, with the developer previously confirming a sequel is in the works (that should also come to Linux) they've briefly mentioned it again now. In the update notes, they mentioned how they're building up the tech needed for the sequel and that it's going "really smoothly.". This work will allow for a much bigger and more open world, which sounds pretty exciting!

today's howtos

Filed under
HowTos

Announcement of LibreOffice 6.4.6

Filed under
LibO

The Document Foundation announces the availability of LibreOffice 6.4.6, the 6th minor release of the LibreOffice 6.4 family, targeted at all users relying on the best free office suite ever for desktop productivity. LibreOffice 6.4.6 includes bug fixes and improvements to document compatibility and interoperability with software from other vendors.

LibreOffice 6.4.6 is optimized for use in every environment, even by more conservative users, as it now includes several months of work on bug fixes. Users of LibreOffice 6.3.6 and previous versions should update to LibreOffice 6.4.6, as this is now the best choice in term of robustness for their productivity needs.

For enterprise class deployments, TDF strongly recommends sourcing LibreOffice from one of the ecosystem partners, to get long-term supported releases, dedicated assistance, custom new features and other benefits, including SLAs (Service Level Agreements): https://www.libreoffice.org/download/libreoffice-in-business/. Also, the work done by ecosystem partners flows back into the LibreOffice project, and this represents an advantage for everyone.

Read more

Love Ubuntu but want the latest KDE Plasma? KDE neon now sits atop Ubuntu 20.04

Filed under
KDE

Merging together a solid Ubuntu 20.04 LTS foundation and the latest KDE Plasma packages, KDE neon has a fresh rebase out for you to try out.

So what exactly is it? Is it another Linux distribution? Well, sort of. Not quite. It's just the long-term supported versions of Ubuntu with the freshest releases of the KDE Plasma desktop environment (plus Qt and other KDE software) stuck on top of it. They said it's for people who want "the latest and greatest from the KDE community but the safety and stability of a Long Term Support release". So unlike Kubuntu, the official Ubuntu KDE distribution variant, you're not stuck to the main version of Plasma it launches with.

Read more

Tumbleweed Snapshots bring Kernel 5.8, Hypervisor FS Support with Xen Update

Filed under
SUSE

This week openSUSE Tumbleweed delivered four snapshots that brought in a new mainline kernel for the distribution as well as a package for Xen that removes previous requirements of parsing log data or writing custom hypercalls to transport the data, and custom code to read it.

The latest snapshot, 20200810, brought the 5.8.0 Linux Kernel that had a fix for missing check in vgacon scrollback handling and an additional commit from the previous version improves load balancing for SO_REUSEPORT, which can be used for both TCP and UDP sockets. The GNU Compiler Collection 10 update includes some Straight Line Speculation mitigation changes. GNOME had a few package updates in the snapshot with updates to accerciser 3.36.3, web browser epiphany 3.36.4 and GNOME games gnome-mines 3.36.1 and quadrapassel 3.36.04. The snapshot is trending at a rating of 84, according to the Tumbleweed snapshot reviewer.

Read more

Syndicate content

More in Tux Machines

Linux Kernel: GPU Blobs, 5.8, 5.9 and ARM32 in Action

  • Netgpu and the hazards of proprietary kernel modules

    On its face, the netgpu patch set appears to add a useful feature: the ability to copy network data directly between a network adapter and a GPU without moving it through the host CPU. This patch set has quickly become an example of how not to get work into the kernel, though; it has no chance of being merged in anything like its current form and has created a backlash designed to keep modules like it from ever working in mainline kernels. It all comes down to one fundamental mistake: basing kernel work on a proprietary kernel module. The use case for netgpu appears to be machine-learning applications that consume large amounts of data. The processing of this data is offloaded to a GPU for performance reasons. That GPU must be fed a stream of data, though, that comes from elsewhere on the network; this data follows the usual path of first being read into main memory, then written out to the GPU. The extra copy hurts, as does the memory-bus traffic and the CPU time needed to manage this data movement. This overhead could be significantly reduced if the network adapter were to write the data directly into the GPU's memory, which is accessible via the PCI bus. A suitably capable network adapter could place packet data in GPU memory while writing packet headers to normal host memory; that allows the kernel's network stack to do the protocol processing as usual. The netgpu patch exists to support this mode of operation, seemingly yielding improved performance at the cost of losing some functionality; anything that requires looking at the packet payload is going to be hard to support if that data is routed directly to GPU memory.

  • Some statistics from the 5.8 kernel cycle

    Linus Torvalds released the 5.8 kernel on August 2, concluding another nine-week development cycle. By the time the work was done, 16,306 non-merge changesets had been pulled into the mainline repository for this release. That happens to be a record, beating the previous record holder (4.9, released in December 2016) by 92 changesets. It was, in other words, a busy development cycle. It's time for our traditional look into where that work came from to see what might be learned. A total of 1,991 developers contributed to 5.8, which is another record; 304 of those developers appeared for the first time in this cycle. The community added over 924,000 lines of code and removed around 371,000 for a net growth of over 553,000 lines of code.

  • FUSE Read/Write Passthrough Updated For Much Better File-System Performance

    Of various criticisms around FUSE for implementing file-systems in user-space, one of the most prolific issues is around the performance generally being much lower than a proper file-system kernel driver. But with the FUSE passthrough functionality that continue to be worked on, there is the potential for much better FUSE file-system performance. The ongoing FUSE passthrough work is about allowing the passthrough read/write of files in avoiding at times unnecessary overhead of the user-space FUSE daemon. When operating in FUSE_PASSTHROUGH mode, the daemon can allow on a per-file basis opening in passthrough mode where all read and write operations are forwarded by the kernel directly to the lower file-system rather than to the FUSE daemon running in user-space.

  • Navi 2 Fixes, Other Graphics/Display Fixes Sent In For Linux 5.9

    Following all of the feature updates to the open-source GPU/DRM drivers for Linux 5.9 that included a lot of new material, the first batch of fixes have now been sent in for mainline in addressing early fallout from these many changes. Ahead of the Linux 5.9-rc1 release this weekend, an initial batch of Direct Rendering Manager fixes were sent out on Thursday.

  • How the ARM32 Linux kernel decompresses

    This is intended as a comprehensive rundown of how the Linux kernel self-decompresses on ARM 32-bit legacy systems. All machines under arch/arm/* uses this method if they are booted using a compressed kernel, and most of them are using compressed kernels.

  • Walleij: How the ARM32 Linux kernel decompresses

    For those who are into the details: here is a step-by-step guide through the process of decompressing an Arm kernel and getting ready to boot from Linus Walleij.

The Linux-based PinePhone is the most interesting smartphone I've tried in years

Android's potential for customization was seemingly endless when it was first introduced, thanks to its Linux kernel and open-source nature. However, Google has introduced more restrictions over the past few years in the name of privacy and security, making root and other deep modifications difficult or impossible. While I agree that most of the security changes in Android are needed (I really don't need the Facebook app digging through my local files), they do mean you are not in full control of your own device. There's still the option of using custom ROMs like LineageOS and Paranoid Android, but they're still limited by the restrictions of Android. Porting ROMs to new phones is a time-consuming and difficult process, they sometimes lack features compared to the stock software (like full camera quality), and some devices don't allow unlocking the bootloader at all. Thankfully, there's now an alternative to Android for enthusiasts who want full control over their phone: the PinePhone, a budget device developed by Pine64 and supported by the Linux community. Despite its many (many, many) limitations, the PinePhone is still the most interesting phone I've used in years. Read more

tdoay's howtos

QEMU 5.1.0 released

  • QEMU version 5.1.0 released

    We’d like to announce the availability of the QEMU 5.1.0 release. This release contains 2500+ commits from 235 authors.

  • QEMU 5.1.0 released

    Version 5.1.0 of the QEMU processor emulator is out. "This release contains 2500+ commits from 235 authors." Enhancements consist mostly of additional hardware emulation, of course, but it doesn't stop there; see the changelog for lots of details.

  • QEMU 5.1 Release Brings Many Improvements To This Open-Source Virtualization Component

    QEMU 5.1 is now available for this important piece of the open-source Linux virtualization stack. There are plenty of changes across the board with QEMU 5.1 while some of the highlights standing out include: - Support for live migration on AMD EPYC systems with nested virtualization. - Persistent Memory Region (PMR) support from the NVMe 1.4 specification.