Language Selection

English French German Italian Portuguese Spanish

Beyond Beyond Linux from Scratch (lfs - part3)

Filed under
Linux
HowTos
-s

In continuing with my Linux From Scratch series with Part 3, I present my adventures in setting up a more productive desktop system. Up until this point I have concentrated on just getting the basic underlying system in place and later installing X and a window manager. Today we strike out on our own some as we venture out of the docbook to go beyond Beyond Linux from Scratch.

Picking up where I left off last time, without kde's ksnapshot I was going to need some way to take screenshots. I remembered Imagemagick contains the "import" tool, but I also remembered scrot. Scrot is a small, easy-to-compile utility that would meet my needs. So, that was the route I took. Download giblib and scrot.

Then it's as simple as:

tar -zxvf giblib-1.2.4.tar.gz
cd giblib-1.2.4
./configure --prefix=/usr && make
su to root
make install

And do the same with scrot:

tar -zxvf scrot-0.8.tar.gz
cd scrot-0.8
./configure --prefix=/usr && make
su to root
make install

Then at the cli, one can take screenshots using a command something like this:
scrot -d 6 desktop.jpg

In this example the option "-d" is delay in seconds. My command delays taking the screenshot for 6 seconds, giving one time to open menus or whatever.

My friend wrote me on the day, actually right about the same time, I published my LFS: Part 2 and sent screenshots of a window manager he installed probably more as a joke than anything. To his surprise I wrote back and said "how cuuute!" I had fluxbox installed already, but my next course of action was to install Equinox Desktop Environment. I googled for the site and downloaded the required library and ede packages. I followed the Installation How-to and they installed in about 5 minutes with no issue. And I can really say that I'm enjoying it. To make icons, one right clicks the desktop, chooses "New desktop item" and fills in the blanks. Ede comes with a few icons in it's package, so that's handy. To set a wallpaper, right click the desktop and choose "Background Settings," and browse to the desired wallpaper. Of course it has all these menu entries for which I don't have applications. Big Grin Actually a few have the corresponding apps and I installed a few. But just when I was thinking "if it just had some other desktops..." I find it does. In the panel there's an icon of an indistinguishable image that allows one to choose another desktop. I find that a little inconvenient as one has to click twice to reach the other desktop, but at least it's there. Included are settings for the fonts, colors and windecs. There are
other themes on the website.

So, for a nice little light desktop that takes about 5 minutes to
install:

Download: the efltk library and the Equinox Desktop Environment package.

tar -jxvf efltk-2.0.5.tar.bz2
cd efltk-2.0.5
./configure --prefix=/usr --disable-mysql --disable-unixODBC --enable-xft && make
su to root
make install

tar -jxvf ede-1.0.4.tar.bz2
cd ede-1.0.4
./configure --prefix=/usr && make
su to root
make install

Then either type:
/usr/X11R6/bin/xinit /usr/bin/startede
or put startede in your ~/.xinitrc file to start it.



        

        

        

        



In case you noticed in my screenshots the output of:


configuration error - unknown item 'OBSCURE_CHECKS_ENAB' (notify administrator)
configuration error - unknown item 'CRACKLIB_DICTPATH' (notify administrator)
configuration error - unknown item 'PASS_CHANGE_TRIES' (notify administrator)
configuration error - unknown item 'PASS_ALWAYS_WARN' (notify administrator)

That's one little bug to which I hadn't paid too much attention at the time of my last write up, but it's easily fixed by editing out those lines in the /etc/login.defs file, as those functions are now handled by PAM. They're harmless and I'd been too lazy to fix it before the screenshots and now I'm too laz...er... busy to redo the screenshots. Big Grin

Next order of business was setting up a word processor or office application. My sources directory had become quite large and at this point I found I was going to have to delete what was in it. Freeing up over 3 GB, I preceded with the download of latest version of OpenOffice.org at the time - beta 2 of 2.0. But what a mess I found. The binary package was all rpms at the time and source package was about 100 different directories with no central configure script or makefile. I wasn't about to spend all day cd into each of those and doing the dance, so I downloaded the 30-day trial of TextMaker. I really like this program, too bad it costs 50 bucks. And of course I have vim and nano installed, so hopefully by the time the textmaker trial is up, OpenOffice.org will have a decent package for us who don't have rpm installed. The installation of TextMaker is simply a matter of untaring/uncompressing the downloaded tar.gz into our directory of choice and the start binary is called tml. So unless you put that directory in your path, you will need the full command to start it.

For example in my case that would be:

/usr/local/textmakertrial/tml.

...Or actually I made a desktop icon to that for me. FYI, the BLFS handbook does contain full instructions for installing OpenOffice-1.1.4.

I soon grew tired of the little xterm and decided it was time to install Eterm. It was merely a matter of installing libast and then Eterm. No problems there and now I could use my "myeterm" script to which I've grown quite spoiled. Eterm is my favorite terminal emulator because you can customize it so easily. If you wish to use Eterm:

download: the libast library and

tar -zxvf libast-0.6.1.tar.gz
cd libast-0.6.1
./configure --prefix=/usr && make
su to root
make install

download: Eterm and

tar -zxvf Eterm-0.9.3.tar.gz
cd Eterm-0.9.3
./configure --prefix=/usr && make
su to roo
make install

The command I use to start mine so that it'll look like the terminal is running on the background (transparent with no windec or scrollbars etc.) is this:
Eterm --trans -g 75x25 -f white -F '-*-lucidatypewriter-medium-r-normal-sans-16-*-*-*-*-*-*-*' -O --tint=#ffffff --shade 0 --borderless --scrollbar-popup --scrollbar-floating --scrollbar no --double-buffer -a "toggles buttonbar false"

If you are like me, there is nothing more annoying than booting a system to do some work and notice that your time is off by 15 minutes or even 6 hours. There should be a law against an OS changing anything in the bios!!! This is another petpeeve of mine. To quietly handle this problem, I enlist the services of ntpdate. The instructions for installing NTP-4.2.0 are included in the BLFS docbook and work quite well. Follow those, and then instead of running the ntpd all the time, we can just use the included utility ntpdate. You can run ntpdate as a stand alone command any time you wish in any terminal, set it up to run periodically as a cron job, or as I do as a boot time service. After your ntp package install, forego the configuration instructions unless
you're needing to supply time service to your network. Instead:

nano /etc/rc.d/init.d/ntpdate
and simply type and save as root:

/usr/sbin/ntpdate -b time.nist.gov

Then as root issue the following commands to make it executable and run at boot:

chmod ug+xr /etc/rc.d/init.d/ntpdate
ln -s /etc/rc.d/init.d/ntpdate /etc/rc.d/rc3.d/S22ntpdate

You may even wish to adjust your bios time, and in which case you can add on the next line in your /etc/rc.d/init.d/ntpdate file:

/sbin/hwclock --systohc

The -b switch tells ntpdate to use 'settimeofday' instead of the 'adjtime', which I'm convinced is a curse from satan himself (no hate mail please). And the --systohc for hwclock tells it to set the bios time to our new adjusted system time.

For image manipulation, Gimp is outlined in the BLFS docbook, but if you follow it word for word, it won't be able to decode jpegs. So, modify their suggestions to:

./configure --prefix=/usr --sysconfdir=/etc --disable-print && make

And as a bonus, the menu entry in Ede now works. Big Grin

Some other applications from the BLFS docbook one might need are: unzip, which, and openssh. The instructions work well for these.

For a backup and the availability of xffm, I decided to include xfce4 as well. For the sake of brievity I don't think I'll outline each and every command used, as this is quite a collection of modules. However, download the xfce4 package. With the xfce4 package uncompressed you will find many directories containing the required library and base install as well as the different modules that you might like. Just cd into each one of interest and do the configure, make, make install routine. A graphical installer is available as well, although it installs an older version and the site is in German.

    

I use bash for my file manager, but it's always nice to have a graphical version available. A real nice and extremely useful one is emelfm. You can download it here. Installation is easy peasy, just

tar -zxvf emelfm-0.9.2.tar.gz
cd emelfm-0.9.2
make
su to root
make install

Note however, the executable will be located in /usr/local/bin.

So at this point we have our basic system with X and nvidia graphic drivers, three window managers from which to choose, xffm and emelfm for file management, mozilla and opera for browsing, news and email, feh, iv, and gimp for image viewing and manipulation, and TextMaker, vim, and nano for publishing and editing. Next is multimedia. <deep breath>

    

You may not know this about me, but I have to have xawtv. I've tried a lot of tv applications over the years, but none stack up to the stability and resource overhead of xawtv. So the next order of business was installing xawtv. This isn't the daunting task it once was before the kernel included bttv drivers. Now it's just simply a matter of enabling support in the kernel and installing xawtv. Xawtv is a fairly straight forward compile. Download: xawtv and tv-fonts.

tar -jxvf tv-fonts-1.1.tar.bz2
cd tv-fonts-1.1
./configure --prefix=/usr && make
su to root
make install

then:
tar -zxvf xawtv-3.94.tar.gz
cd xawtv-3.94
./configure --with-x --enable-gl --enable-quicktime -with-xvideo
--with-alsa --prefix=/usr && make

su to root and make install.

You'll need a configuration file, ~/.xawtv, and if you don't have one, here's an exerpt of mine for an example:

[global]
freqtab = us-cable

[defaults]
input = Television
norm = NTSC

[WKRN (2)]
channel = 2

[VMP (3)]
channel = 3

[WSMV (4)]
channel = 4

[WTVF (5)]
channel = 5

That was the easy one. Next I require mplayer, and I require mplayer to play anything it encounters. In the old days that meant downloading all the libraries and codecs from many many sources and reading a long doc to get all the flags to use during compile time. This became obsolete with distros like pclos, gentoo, and some others. All this to say, I'm a little rusty in this area. But thankfully the BLFS has the instructions in their docbook and a lot of the codecs are bunded together in one (or two) package(s). And of course, it went without a hitch. Using the information in the instruction I can now watch any movie file I run into.

    

Also included in the multimedia section of the docbook are xmms and cdrecording applications and tools. At the risk of repeating myself, the instructions work wonderfully in these areas as well and I recommend just following the instructions.

As of now, I have a fairly complete system all compiled from scratch and taking up about 1.3 gig of space. It boots in less than 30 seconds and performs very well. It's fast and stable. More than that is the satisfaction and sense of accomplishment that can come from completion or near completion of a daunting task. I found the whole experience quite fullfilling, educational and fun. I can't encourage you enough to visit the Linux from Scratch website and download your instruction book today.

Part 2
Part 1

Excellent series

Thanks for the LFS/BLFS/BBLFS series. They were very informative and makes me want to try it again. I did get a basic LFS up and running two years ago, but never went beyond mainly because the computer I was playing with is a P2 300 Sad Time to convince the wife that we really could use new computers Wink

re: Excellent series

Why thank you kind sir for your nice words. It was really quite a bit of work, but it was a labor of love - not done for the sake of an article (or 3). Big Grin

I know what you mean about the slower computers, I put gentoo on a p150 about 18 months ago and well, it don't get updated too often. Tongue

----
You talk the talk, but do you waddle the waddle?

re: comparison

Well, I'd say that gentoo is much easier in that it does all the grunt work for you. If I want an application/package in gentoo I type emerge <application> and it handles all the downloading and installing of dependencies as well as the compile and install. And their repository is so huge, I've rarely searched for something and it not be in gentoo's portage. Although some packages I prefer to do on my own, KDE being one of them, I can still get the dependencies installed through portage. For the source-based distro fan, it's like having your cake and eating it too. Fortunately the lfs/blfs docbooks lists dependencies and provides links, and that helps big time.

As far as kde not being installed on my LFS, I was being lazy or in too bigga hurry I guess. KDE itself is a fairly easy compile usually, but it does have a lot of dependencies and can take quite a bit of time. Yes, mozilla/firefox and opera were shortcuts to getting on the internet. The BLFS docbook contains instructions for kde and gnome.

----
You talk the talk, but do you waddle the waddle?

Part 4 Perhaps? :)

Hi!

First off, great review regarding LFS!

I know it's been quite some time since your last review/reply to comments here. I've wondered how goes the LFS install?

Have you continued to tweak it, expand on the package? I've wondered if you kept it around, played with it, and, or, made it a part of your everyday computing experience Smile

I'll try not to date myself heavily here, I started way-way back with only a CLI learning basic/basica and dabbled in assembly. Through that time I went from dos/unix/posix/windows/linux (variations ie: DosLinux) and I always found myself coming back to Linux in one flavour or another.

Recently, the last year or so I've found myself totally going over to Linux. I missed the CLI environment and feel of yesteryear..lol With that I've been put off in a sense with many of the distributions and such that just seem to weigh down a really top-notch OS such as Linux. I stumbled across LFS somehow, who knows, and now my son and I (he's 14, yes I'm old) have a bit of a competitive project going on. We're both currently working on building the base LFS system then we're going to migrate to BLFS as well and see who's system is the best in functionality and asthetics, but not only that, we'll both be taking a step neither of us ever considered and it's kind've added another new excitement to beyond computing in general Smile

Your review was just what I was looking for and should've read it beforehand. It's helped a lot seeing someone successfully complete the process and give it a very decent pat on the back.

Thanks for taking the time to review it, and thanks for reading this rather lengthy comment Smile

Take Care!

re: Part 4 Perhaps? :)

Um, no I haven't kept it up. I played with it for a few months adding features and stuff, but I didn't implement one of the package management ideas and soon just quit messing with it. If I hadn't already been settled into Gentoo I might have made it my permanent system. It's a very cool project for sure. I surely enjoyed setting it up.

Thanks for your visit and comments. I might look around and see if I still have it around here somewhere and if it can be saved.

LFS or Arch Linux

Hi, Im reading this exellent review of LFS, because I have just downloaded liveCD of LFS. Im new to Linux, about four months, I have passed through few distros: Fedora, Ubuntu, and Slackware, ending up with Mint and Arch Linux. I wonder if you could compare LFS with Arch, witch I enjoy very much for its simplicity, speed, and the pacman command. But, Im thinking to give LFS a try, although some say that LFS is not good as distro for daily use, but just as learning experience to know Linux better.
Blessing.

re: LFS or Arch Linux

Well, I really couldn't compare LFS with anything else - not even Gentoo. Although Gentoo would probably be the closest. Arch is a binary distro with a great commandline package manager. LFS didn't have a package manager last I messed with it. There were methods of managing packages, but the user had to sorta build it from scratch. Big Grin

There's no reason why LFS couldn't be fine for an everyday desktop if that's what you wanted to do. If so, perhaps you might want to look into some of those described package management solutions.

Go ahead and go for it. I don't know how you have your disk partitioned, but I suggest slicing it up into several partitions so that you can play with one distro while keeping one or two intact for daily use.

LFS or Arch Linux

Hi,
thanks a lot for this fast reply. Yes. I will take your advice about partitioning. I wonder why there are so few good reviews of LFS. The more your afford is appreciated. Take care.

The nice thing about LFS

The nice thing about LFS is that you can always install any package manager including pacman, make packages and even start your own distribution.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

More in Tux Machines

Kernel: XFS and WiMAX in Linux

  • Prepare To Re-Format If You Are Using An Older XFS Filesystem - LinuxReviews

    Linux 5.10 brings several new features to the XFS filesystem. It solves the year 2038 problem, it supports metadata checksumming and it has better metadata verification. There's also a new configuration option: CONFIG_XFS_SUPPORT_V4. Older XFS filesystems using the v4 layout are now deprecated and there is no upgrade path beyond "backup and re-format". The Linux kernel will support older XFS v4 filesystems by default until 2025 and optional support will remain available until 2030. A new CONFIG_XFS_SUPPORT_V4 option in Linux 5.10. In case you want to.. still be able to mount existing XFS filesystems if/when you upgrade to Linux 5.10. We previously reported that XFS patches for Linux 5.10 delay the 2038 problem to 2486. That's not the only new feature Linux 5.10 brings to the XFS filesystem when it is released early December: It supports metadata checksumming, it has better built-in metadata verification and there is a new CONFIG_XFS_SUPPORT_V4 configuration option. Make sure you don't accidentally say N to that one if you have an older XFS filesystem you'd like to keep using if/when you upgrade your kernel.

  • The Linux Kernel Looks To Eventually Drop Support For WiMAX

    With the WiMAX 802.16 standard not being widely used outside of the Aeronautical Mobile Airport Communication System (AeroMACS) and usage in some developing nations, the Linux kernel may end up dropping its support for WiMAX but first there is a proposal to demote it to staging while seeing if any users remain. Longtime kernel developer Arnd Bergmann is proposing that the WiMAX Linux kernel infrastructure and the lone Intel 2400m driver be demoted from the networking subsystem to staging. In a future kernel release, the WiMAX support would be removed entirely if no active users are expressed. The Linux kernel WiMAX infrastructure is just used by the Intel 2400m driver for hardware with Sandy Bridge and prior, thus of limited relevance these days. That Intel WiMAX implementation doesn't support the frequencies that AeroMACS operates at and there are no other large known WiMAX deployments around the world making use of the frequencies supported by the 2400m implementation or users otherwise of this Linux kernel code.

  • Linux Is Dropping WiMAX Support - LinuxReviews

    It's no loss. There is a reason why you have probably never seen a WiMAX device or heard of it, WiMAX was a wireless last-mile Internet solution mostly used in a few rural areas in a limited number of countries between 2005 and 2010. There is very little use for it today so it is almost natural that Linux is phasing out support for WiMAX and the one WiMAX device it supports. WiMAX is a wireless protocol, much like IP by Avian Carriers except that it has less bandwidth and significantly lower latency. WiMAX (Worldwide Interoperability for Microwave Access) is a set of wireless standards that were used to provide last-mile Internet connectivity where DSL and other solutions were unavailable. WiMAX can work over long distances (up to 50 km), something WiFi can't. The initial design could provide around 25 megabit/s downstream, which was competitive when WiMAX base-stations and modems become widely available around 2005. That changed around 2010 when 4G/LTE become widely available. The WiMAX Forum, who maintains the WiMAX standard, tried staying relevant with a updated standard called WiMAX 2 in 2011. Some equipment for it was made, but it never became a thing. WiMAX was pretty much dead by the time WiMAX 2 arrived. The standard NetworkManager utility GNU/Linux distributions come with supported WiMAX until 2015. The Linux kernel still supports it and exactly one WiMAX device from Intel as of Linux 5.9, but that's about to change.

Fedora Elections and IBM/Red Hat Leftovers

  • Fedora 33 elections nominations now open

    Candidates may self-nominate. If you nominate someone else, please check with them to ensure that they are willing to be nominated before submitting their name. The steering bodies are currently selecting interview questions for the candidates. Nominees submit their questionnaire answers via a private Pagure issue. The Election Wrangler or their backup will publish the interviews to the Community Blog before the start of the voting period. Fedora Podcast episodes will be recorded and published as well. Please note that the interview is mandatory for all nominees. Nominees not having their interview ready by end of the Interview period (2020-11-19) will be disqualified and removed from the election.

  • 12 Tips for a migration and modernization project

    Sometimes migration/modernization projects are hard to execute because there are many technical challenges, like the structure of legacy code, customer environment, customer bureaucracy, network issues, and the most feared of all, production bugs. In this post I'm going to explain the 12-step migration / modernization procedure I follow as a consultant using a tip-based approach. I have some experience with this kind of situation because I’ve already passed by different kinds of projects with several kinds of problems. Over time you start to recognize patterns and get used to solving the hard problems. So, I thought: Wouldn't it be cool to create a procedure based on my experience, so that I can organize my daily work and give the transparency that the customers and managers want? To test this out, I did this for one customer in my hometown. They were facing a Red Hat JBoss EAP migration/modernization project. The results of the project were outstanding. The customer said they were even more satisfied with the transparency. The project manager seemed really comfortable knowing all about the details through the project and pleased with reducing the risk of unexpected news.

  • Awards roll call: June 2020 to October 2020

    We are nearly at the end of 2020 and while the pace continues to increase, we want to take a moment to acknowledge and celebrate some of the successes of Red Hat's people and their work. In the last four months, several Red Hatters and Red Hat products are being recognized by leading industry publications and organizations for efforts in driving innovation.

  • How developers can build the next generation of AI advertising technology – IBM Developer

    As we look across the most rapidly transforming industries like financial services, healthcare, retail – and now advertising, developers are putting open source technologies to work to deliver next-generation features. Our enterprise clients are looking for AI solutions that will scale with trust and transparency to solve business problems. At IBM®, I have the pleasure of focusing on equipping you, the developers, with the capabilities you need to meet the heightened expectations you face at work each day. We’re empowering open source developers to drive the critical transformation to AI in advertising. For instance, at the IBM Center for Open source Data and AI Technologies (CODAIT), enterprise developers can find open source starting points to tackle some of your thorniest challenges. We’re making it easy for developers to use and create open source AI models that can ultimately help brand marketers go deeper with AI to reach consumers more effectively.

Programming: Qt, PHP, JS and Bash

  • Qt 6 To Ship With Package Manager For Extra Libraries - Phoronix

    Adding to the list of changes coming with the Qt 6 toolkit, The Qt Company has now outlined their initial implementation of a package manager to provide additional Qt6 modules.

  • Qt for MCUs 1.5 released

    A new release of Qt for MCUs is now available in the Qt Installer. If you are new to Qt for MCUs, you can try it out here. Version 1.5 introduces new platform APIs for easy integration of Qt for MCUs on any microcontroller, along with an in-depth porting guide to get you going. Additionally, it includes a set of C++ APIs to load new images at runtime into your QML GUI. As with every release, 1.5 also includes API improvements and bug fixes, enhancing usability and stability.

  • KDDockWidgets v1.1 has been released! - KDAB - KDAB on Qt

    KDDockWidgets v1.1 is now available! Although I just wrote about v1.0 last month, the 1.1 release still managed to get a few big features.

  • KDAB TV celebrates its first year - KDAB

    A year ago KDAB started a YouTube channel dedicated to software development with Qt, C++ and 3D technologies like OpenGL. We talked to Sabine Faure, who is in charge of the program, about how it worked out so far and what we can expect in the future.

  • How to build a responsive contact form with PHP – Linux Hint

    Contact forms are commonly used in web applications because they allow the visitors of the website to communicate with the owner of the website. For most websites, responsive contact forms can be easily accessed from various types of devices such as desktops, laptops, tablets, and mobile phones. In this tutorial, a responsive contact form is implemented, and the submitted data is sent as an email using PHP.

  • Applying JavaScript’s setTimeout Method

    With the evolution of the internet, JavaScript has grown in popularity as a programming language due to its many useful methods. For example, many websites use JavaScript’s built-in setTimeout method to delay tasks. The setTimeout method has many use cases, and it can be used for animations, notifications, and functional execution delays.Because JavaScript is a single-threaded, translative language, we can perform only one task at a time. However, by using call stacks, we can delay the execution of code using the setTimeout method. In this article, we are going to introduce the setTimeout method and discuss how we can use it to improve our code.

  • Removing Characters from String in Bash – Linux Hint

    At times, you may need to remove characters from a string. Whatever the reason is, Linux provides you with various built-in, handy tools that allow you to remove characters from a string in Bash. This article shows you how to use those tools to remove characters from a string. [...] Sed is a powerful and handy utility used for editing streams of text. It is a non-interactive text editor that allows you to perform basic text manipulations on input streams. You can also use sed to remove unwanted characters from strings. For demonstration purposes, we will use a sample string and then pipe it to the sed command.

Python Programming

  • Dissecting a Web stack - The Digital Cat

    Having recently worked with young web developers who were exposed for the first time to proper production infrastructure, I received many questions about the various components that one can find in the architecture of a "Web service". These questions clearly expressed the confusion (and sometimes the frustration) of developers who understand how to create endpoints in a high-level language such as Node.js or Python, but were never introduced to the complexity of what happens between the user's browser and their framework of choice. Most of the times they don't know why the framework itself is there in the first place. The challenge is clear if we just list (in random order), some of the words we use when we discuss (Python) Web development: HTTP, cookies, web server, Websockets, FTP, multi-threaded, reverse proxy, Django, nginx, static files, POST, certificates, framework, Flask, SSL, GET, WSGI, session management, TLS, load balancing, Apache. In this post, I want to review all the words mentioned above (and a couple more) trying to build a production-ready web service from the ground up. I hope this might help young developers to get the whole picture and to make sense of these "obscure" names that senior developers like me tend to drop in everyday conversations (sometimes arguably out of turn). As the focus of the post is the global architecture and the reasons behind the presence of specific components, the example service I will use will be a basic HTML web page. The reference language will be Python but the overall discussion applies to any language or framework. My approach will be that of first stating the rationale and then implementing a possible solution. After this, I will point out missing pieces or unresolved issues and move on with the next layer. At the end of the process, the reader should have a clear picture of why each component has been added to the system.

  • Introducing AutoScraper: A Smart, Fast and Lightweight Web Scraper For Python | Codementor

    In the last few years, web scraping has been one of my day to day and frequently needed tasks. I was wondering if I can make it smart and automatic to save lots of time. So I made AutoScraper!

  • django-render-block 0.8 (and 0.8.1) released!

    A couple of weeks ago I released version 0.8 of django-render-block, this was followed up with a 0.8.1 to fix a regression. django-render-block is a small library that allows you render a specific block from a Django (or Jinja) template, this is frequently used for emails when you want multiple pieces of an email together in a single template (e.g. the subject, HTML body, and text body), but they need to be rendered separately before sending.

  • Pyston v2: 20% faster Python | The Pyston Blog

    We’re very excited to release Pyston v2, a faster and highly compatible implementation of the Python programming language. Version 2 is 20% faster than stock Python 3.8 on our macrobenchmarks. More importantly, it is likely to be faster on your code. Pyston v2 can reduce server costs, reduce user latencies, and improve developer productivity. Pyston v2 is easy to deploy, so if you’re looking for better Python performance, we encourage you to take five minutes and try Pyston. Doing so is one of the easiest ways to speed up your project.

  • Pyston v2 Released As ~20% Faster Than Python 3.8 - Phoronix

    Version 2.0 of Pyston is now available, the Python implementation originally started by Dropbox that builds on LLVM JIT for offering faster Python performance. Pyston developers believe their new release is about 20% faster than the standard Python 3.8 and should be faster for most Python code-bases.

  • Python int to string – Linux Hint

    Python is one of the universal languages that support various types of data types like integer, decimal point number, string, and complex number. We can convert one type of data type to another data type in Python. This data type conversion process is called typecasting. In Python, an integer value can easily be converted into a string by using the str() function. The str() function takes the integer value as a parameter and converts it into the string. The conversion of int to string is not only limited to the str() function. There are various other means of int to string conversion. This article explains the int to string conversion with various methods.

  • Python isinstance() Function – Linux Hint

    Python is one of the best and efficient high-level programming languages. It has a very straightforward and simple syntax. It has very built-in modules and functions that help us to perform the basic tasks efficiently. The Python isinstance() function evaluates either the given object is an instance of the specified class or not.