Esteban Herrera DIY LinuxMASTER YOURSELF PUREBLEND DEBIAN DESKTOPS FROM A SCRATCH v1.0.1
Copyright © Esteban HerreraISBN 978-000-000-000-2Published by Esteban Herrera Publishing.Printed in Herreras' Printhouse.2017
Table of ContentsTable of Contents.......................................................................................................................................4Meet the software installation sources and options available................................................................10 Where can I find software for GNU/Linux?..........................................................................................10 Software sources available...............................................................................................................10 Alternative software deployments.......................................................................................................11 Automated installation processes....................................................................................................11 Installation from image files.............................................................................................................12 Installation on Virtual Machines, emulators and chroot environments..........................................13 Binary installation.................................................................................................................................13 Convert other distro binaries into DEB packages.............................................................................14 Debian binaries................................................................................................................................14 Flatpak, X-Apps or Snap packages Debian equivalent.....................................................................15 Full compatible/portable Linux/Debian binaries.............................................................................16 Source Code installation.......................................................................................................................17 Debian source code..........................................................................................................................17 Source code & Debian forks source code........................................................................................19 Binaries or Source Code from other operating systems......................................................................26 MacOS binaries or source code.......................................................................................................26 Source code built for a Windows or DOS version............................................................................26 Windows or DOS executable binaries..............................................................................................27 Multiplatform installation....................................................................................................................27 Desktop Extensions..........................................................................................................................27 Multiplatform Desktop Applications................................................................................................28Dominate activities regarding the software installation and management............................................29 Kernel...................................................................................................................................................29 Build the Linux Kernel......................................................................................................................29 DKMS (Dynamic Kernel Module Support)........................................................................................31 Find out unfound drivers..................................................................................................................32 Working with Kernel modules..........................................................................................................33 Package Management..........................................................................................................................34 Build packages from source.............................................................................................................34 Multi Architecture............................................................................................................................40 Static, shared dynamic and loadable libraries.................................................................................41 System Package Managers: Synaptic, Aptitude, DPKG, APT, Gdebi, Complementary.....................42 Verify download integrity, PGP, GPG, GNUPG, Seahorse.................................................................49 Software installation table...............................................................................................................55 Repositories..........................................................................................................................................68 Create a local Debian repository......................................................................................................68 Manage traditional software repositories.......................................................................................68Build a Minimal Debian Live DVD from source code...............................................................................74 Debian from a scratch......................................................................................................................74Set up and maintain a perfectly functional operating system.................................................................80
Back-up, Emergency and Restore.........................................................................................................80 Cloning and directory and system back-ups....................................................................................80 Data recovery...................................................................................................................................82 Emergency keys combinations.........................................................................................................83 System Rescue..................................................................................................................................84Filesystems...........................................................................................................................................84 Boot Loaders and Dual Boot............................................................................................................84 Clean up the system.........................................................................................................................86 Partitioning.......................................................................................................................................86 Sudo..................................................................................................................................................86 Users, groups and terminals............................................................................................................87 Working with directories..................................................................................................................91Gnome Desktop....................................................................................................................................92 Gnome Desktop Icons, Themes and Cursors...................................................................................92 Gnome Shell Extensions...................................................................................................................92Networking...........................................................................................................................................97 Basic networking..............................................................................................................................98 Bluetooth........................................................................................................................................107 Share system directories across the network................................................................................109 Sync devices in the Cloud...............................................................................................................110Optimization and Power Management..............................................................................................113 ACPI battery monitor......................................................................................................................113 Optimization and performance, speed up computer, save battery power....................................113Peripherals.........................................................................................................................................118 Camera tethering...........................................................................................................................118 Game Controllers and Joystick.......................................................................................................119 Printer.............................................................................................................................................120 Scanner...........................................................................................................................................121 Smartphones..................................................................................................................................122 Video VIM.......................................................................................................................................122Settings...............................................................................................................................................123 Change the default login screen....................................................................................................123 Check hardware information.........................................................................................................124 Create a Bootsplash screen............................................................................................................126 Decode Man pages.........................................................................................................................126 Fonts...............................................................................................................................................127 Make a program the default option...............................................................................................128 Set Date, Time and Timezone........................................................................................................129 Set Keyboard, Local options, Region and Language.......................................................................134 Systemd..........................................................................................................................................136 Wine...............................................................................................................................................142Sound.................................................................................................................................................145 Sound.............................................................................................................................................145SSDs/HDS/CDs....................................................................................................................................146
Logical Volume Management (LVM)..............................................................................................146 Mount and repair CD-DVD ROM ISO or HDs-SSDs.........................................................................148 Multiboot USB Pendrive.................................................................................................................151 Set up software RAID.....................................................................................................................151 Solid State Drives (SSDs).................................................................................................................151 Tune Hard Disk with hdparm.........................................................................................................154 Updates and Upgrades.......................................................................................................................155 Update the system and applications..............................................................................................155 System version upgrade procedure...............................................................................................155 Video..................................................................................................................................................156 3D Acceleration and VR..................................................................................................................156 Brightness.......................................................................................................................................164 Color calibration.............................................................................................................................165 Reconfigure Xserver hardware (Video Card, Keyboard, Mouse, Monitor)....................................165 Video card......................................................................................................................................166 Webcam.........................................................................................................................................187Complete a decent environment by testing the most of software installation options available.........189 3D Modeling, CAD and Animation.....................................................................................................189 Blender...........................................................................................................................................190 Openscad........................................................................................................................................190 Synfig Studio...................................................................................................................................190 AI and Machine Learning...................................................................................................................190 LiSpeak...........................................................................................................................................191 Sirius...............................................................................................................................................212 Audio and Music................................................................................................................................223 Audacity.........................................................................................................................................223 Frescobaldi.....................................................................................................................................223 KXStudio.........................................................................................................................................223 Linthesia.........................................................................................................................................226 Music Players..................................................................................................................................226 Sound Recorder..............................................................................................................................226 Browsers.............................................................................................................................................226 Firefox.............................................................................................................................................227 Google Chrome..............................................................................................................................230 Icedtea............................................................................................................................................232 Broadcasters.......................................................................................................................................234 OBS.................................................................................................................................................234 CD Burners.........................................................................................................................................234 K3b.................................................................................................................................................234 Compressors.......................................................................................................................................235 WinRAR..........................................................................................................................................235 Desktop Enhancers.............................................................................................................................235 Cairo-dock......................................................................................................................................235 Compiz-Fusion................................................................................................................................239
Conky..............................................................................................................................................240 Screenlets.......................................................................................................................................244 Xscreensaver..................................................................................................................................245Desktop Environments.......................................................................................................................249 Fluxbox...........................................................................................................................................249 KDE.................................................................................................................................................258 Xfce.................................................................................................................................................259Development Editors and IDEs...........................................................................................................259 Aptana Studio 3..............................................................................................................................259 Bluefish...........................................................................................................................................260 Brackets..........................................................................................................................................261 Code::Blocks...................................................................................................................................264 MonoDevelop.................................................................................................................................264 Netbeans IDE..................................................................................................................................265 Rstudio...........................................................................................................................................266 Sublime Text Editor........................................................................................................................266 TeXstudio........................................................................................................................................267Development Languages....................................................................................................................268 Java.................................................................................................................................................268 NET Framework..............................................................................................................................273 R.....................................................................................................................................................273Diagramming......................................................................................................................................274 Dia..................................................................................................................................................274 Umbrello........................................................................................................................................275Electronic............................................................................................................................................275 Proteus...........................................................................................................................................275Email...................................................................................................................................................275 Icedove...........................................................................................................................................275Emulators...........................................................................................................................................276 Genymotion....................................................................................................................................276 Firefox OS.......................................................................................................................................276 Mupen64Plus.................................................................................................................................276Games................................................................................................................................................276 Steam.............................................................................................................................................276Graphics Design and Photography.....................................................................................................279 Darktable........................................................................................................................................279 GIMP...............................................................................................................................................280 Photoshop......................................................................................................................................280 RawTherapee.................................................................................................................................281 Scribus............................................................................................................................................281Illustrators..........................................................................................................................................283 Inkscape..........................................................................................................................................283 Krita................................................................................................................................................283 My Paint.........................................................................................................................................284
Library................................................................................................................................................284 Adobe Digital Editions....................................................................................................................284 Calibre............................................................................................................................................284 Management......................................................................................................................................284 ProjectLibre....................................................................................................................................284 Meeting and Chat...............................................................................................................................285 Pidgin..............................................................................................................................................286 Ring.................................................................................................................................................286 Skype..............................................................................................................................................286 Xchat...............................................................................................................................................287 News Feed..........................................................................................................................................287 RSSOwl...........................................................................................................................................287 Office..................................................................................................................................................287 Gimagereader.................................................................................................................................287 Kingsoft Office................................................................................................................................287 Libre Office.....................................................................................................................................288 Remote Desktops...............................................................................................................................288 Teamviewer....................................................................................................................................288 Science...............................................................................................................................................289 Galculator.......................................................................................................................................289 Stellarium.......................................................................................................................................289 Scilab..............................................................................................................................................289 Screen Recorders................................................................................................................................290 Screenshot......................................................................................................................................290 SimpleScreenRecorder...................................................................................................................290 Video and Audio Tools........................................................................................................................294 Ffmpeg...........................................................................................................................................294 Handbrake......................................................................................................................................295 Video Editors......................................................................................................................................295 Cinelerra.........................................................................................................................................295 Kdenlive..........................................................................................................................................295 Lightworks......................................................................................................................................295 Natron............................................................................................................................................296 OpenShot.......................................................................................................................................296 Video Players......................................................................................................................................297 Flash Player....................................................................................................................................297 KODI................................................................................................................................................301 Popcorn Time CE............................................................................................................................301 VLC Player.......................................................................................................................................301 Virtualization......................................................................................................................................301 KVM................................................................................................................................................301 VirtualBox.......................................................................................................................................312Learn to install web development software for the MacOS..................................................................321 Ruby...............................................................................................................................................321
Linuxbrew.......................................................................................................................................323 Linuxbrew – Nodejs........................................................................................................................328 NPM – Grunt..................................................................................................................................329 NPM - Bower – Jquery....................................................................................................................333 RVM................................................................................................................................................339 Linuxbrew – Taps............................................................................................................................435 Linuxbrew – Git..............................................................................................................................446 Linuxbrew - Git tools......................................................................................................................460 Linuxbrew – Nginx..........................................................................................................................466 Linuxbrew – MongoDB...................................................................................................................470 Linuxbrew – Cassandra..................................................................................................................483 Linuxbrew - libsass and sassc.........................................................................................................483 Ruby - sass and Bootstrap-sass......................................................................................................484Security first...........................................................................................................................................484 Improve the system security on local................................................................................................484 Chrootkit........................................................................................................................................484 ClamAV...........................................................................................................................................485 LUKS................................................................................................................................................485 Maldet............................................................................................................................................485 OpenSSL.........................................................................................................................................485 Rkhunter.........................................................................................................................................485 SELinux...........................................................................................................................................485 Sysctl...............................................................................................................................................486 Tripwire..........................................................................................................................................486 VeraCrypt........................................................................................................................................486 Improve the security of the system over the networks and Internet................................................488 Ad blockers.....................................................................................................................................488 Bastille............................................................................................................................................770 Darkstat..........................................................................................................................................770 Etherape.........................................................................................................................................770 Fail2Ban..........................................................................................................................................770 Ip.....................................................................................................................................................770 Netfilter..........................................................................................................................................770 Netstat............................................................................................................................................780 Nmap..............................................................................................................................................780 OpenSSH server..............................................................................................................................781 OpenVPN........................................................................................................................................782 Ping.................................................................................................................................................782 Proxies............................................................................................................................................783 Screen.............................................................................................................................................783 Site Advisors and page checkers....................................................................................................785 Speedtest.......................................................................................................................................785 Tcpdump.........................................................................................................................................785 TOR.................................................................................................................................................786
Traceroute......................................................................................................................................786 Wireshark.......................................................................................................................................786 Improve the security of the system since the network.....................................................................786 Kali..................................................................................................................................................786 Network Firewall............................................................................................................................787 OSSIM.............................................................................................................................................787 REMnux..........................................................................................................................................787Esteban Herrera.....................................................................................................................................787Meet the software installation sources and options availableWhere can I find software for GNU/Linux?Software sources availableIn Debian GNU/Linux it's possible to classify the software installation in several ways. Here is onewhich consist of the list of Software sources available.Software sources available:- Disc image- Automatic installation frameworks- Distribution DVDs- Netinstall CD- Localhost or Local Area Network Debian repository- Debian repository servers- Debian PPA repositories- Web site, P2P and Developers repositories- Ubuntu PPA (Known exceptions)- Any RPM or alternative Linux binary package repo or source- Alternative Package Managers sources- Microsoft's Windows world executables sources- Microsoft's Windows world source code sources- Chrooted Operating System or VM app sources- Desktop Extensions sources- Multiplatform Desktop Applications sourcesThe concept of Official Debian repositories:To be clear, when I speak of Debian Official repositories (or repos) I mean exactly the repos configuredin the directory /etc/apt/sources, especially in the file sources.list. The \"fountain\" of this sources canbe the Debian DVDs, the Netinstall CD, any of the repositories in the Debian repository servers, or aLAN or a repository allocated in the localhost, which is also possible to prepare.
LAN Debian repos:The Local Area Network or locahost options are going to improve the package installation securitybecause no one can intercept and replace real packages with actually time bombs as occurs overpublic Networks.Create a local Debian repository to improve the security, and standardize and cache of the installationpackages.References:Topic: Create a local Debian repository.Guides:Create a local Debian repositoryDebian PPA repositories:Debian PPA is a project under development. In the meantime, to download PPA source use the PPAs ofDebian forks distros like Mint or Ubuntu.With a Debian PPA the programs installation would be as easy as add the new PPA to the system andthen install from the package/source in a simple step with a tool as APT.I would like to search for and navigate for the community packages on a website.Package Verification:You can also verify the packages installed already in the system and the new ones right after theydownloaded, before begin their installation process.References:Topic: Verify the integrity of packages.Guide:Verify download integrity, PGP, GPG, GNUPG, SeahorseAlternative software deploymentsAutomated installation processesSoftware sources available:- Automatic installation frameworksInstallation examples:- Installation from FAI (Fully Automatic Installation framework):References:Web: https://debian-administration.org/article/240/FAI_the_Fully_Automatic_Installation_framework_for_linuxFile: FAI the Fully Automatic Installation framework for linux.pdf- Installation from Ansible:References:Web: http://www.tecmint.com/install-and-configure-ansible-automation-tool-in-linux/
File: How to Install and Configure 'Ansible' Automation Tool for IT Management - Part 1.pdf- PXE Boot server configuration:PXE Boot is very useful when we looking to re-image / install more clients yet a timeReferences:Web: http://arkit.co.in/linux/pxe-boot-server-configuration/File: PXE Boot server configuration step by step Guide.pdfInstallation from image filesSoftware sources available:- Disc imageInstallation examples:This type of installation is not \"installing\" anything at all but deploying the complete system or a partof it from a system image or a partition image, thanks to shells scripts or a specialized software asClonezilla, Partimage or BaculaShell scripts:Always my best choice. I use my own scripts to backup complete system partitions. However I am notgoing to publish my scripts by the moment.Clonezilla:Clonezilla, based on drbl, partclone and udpcast, allows you to do bare metal backup and recovery.This package provides Clonezilla SE (server edition) which is for massive deployment: it can clonemany (40 plus!) computers simultaneously.References:Topic: Clonezilla.Web: https://packages.debian.org/sid/clonezillaFile: Clonezilla - Details in Sid.pdfWeb: http://drpaudel.com.np/?p=221File: Clonezilla tutorial for Debian 6.pdfPartimage:Partimage is a client-server application, but you can use only the client and an external HD to replacethe server. The process without the server takes much less time to complete the restoration from tehbackups. In short, works as follows: You install the server where you will have the partition backups,include complete copies of systems like this Desktop. When the sever is ready, boot the client from aLive Distro CD, which comes with a copy of Partimage pre-installed (I recommend the distro Knoppixwhich DEbian compatible). In the client create the backup. the client will create a compressed imagein the server. When you want to re-install the partition or the whole system from teh backups in theserver, turn on the server and re-insert the Live Distro CD to run Partimage and ask him to restoreeverything.
References:Topic: Backup and restore Linux partitions with Partimage.Web: http://www.debianadmin.com/backup-and-restore-linux-partitions-using-partimage.htmlFile: Backup and restore Linux partitions with Partimage.pdfTopic: Linux KnoppixWeb: http://www.knopper.net/knoppix/index-en.htmlhttp://www.knopper.net/knoppix/index-en.htmlIn both cases, Clonezilla and Partimage, the concept of restoration makes a second sense: We aretalking about a system and software installation instead of a simple restoration. Even thought there isnot data in a new internal hard drive you can deploy on it a complete copy of a system in 20 minutesor less, meanwhile the targeted hardware and the hardware where the installation of the system tocopy occurred are identical.Installation on Virtual Machines, emulators and chroot environmentsSoftware sources available:- Chrooted Operating System or VM app sources- Distribution DVDs- Disc image- Automatic installation frameworks- Distribution DVDs- Netinstall CDInstallation examples:- Photoshop- Run Android apps in the Debian OS- Create a chroot environment to install Linux Mint insideI am not running any Windows programs on my Linux Box, but Photoshop in a Virtual Machine.You are free to change my method by installing and setting up your Wine accordingly. You have toknow that many Adobe Adobe Photoshop versions run very well in Linux with Wine.You can install other system rather than Debian inside Debian using chroot environments and then runthe distro apps normally no matter that Debian is the main OS.References:Guides: Photoshop, VirtualBox, KVMBinary installation
Convert other distro binaries into DEB packagesSoftware sources available:- Any RPM or alternative Linux binary package repo or sourceUse the command 'alien' to Debianize RPM packages, I mean to create a DEB package from RPMpackage. This option is not going to work with all the packages, but supports conversion amongpackages such as Linux Standard Base (LSB), RPM, DEB, Stampede ans Slackware.Some people says the command is some old and it is better to build the source instead of translatingthe package to be able to install it on Debian.This installation example works:Guide:ProjectLibreReferences:Topic: Installing and using the command 'alien' in Debian. Converting .rpm Packages ToDebian/Ubuntu .deb Format.Web: https://www.howtoforge.com/converting_rpm_to_deb_with_alienFile: Converting .rpm Packages To Debian_Ubuntu .pdfDebian binariesSoftware sources available:- Distribution DVDs- Netinstall CD- Localhost or Local Area Network Debian repository- Debian repository servers- Debian PPA repositories- Web site, P2P and Developers repositories- Ubuntu PPA (Known exception)Installation examples (DPKG):- Google Chrome- Skype- TeamviewerInstallation examples (APT):- VLC- Firefox- Screensaver- Xchat- VirtualBox
Ubuntu PPA (Known exception).DEB packages compatible with Debian:- KXStudioFor Debian packaged binaries:They are recognized by the extension .deb, I.E: package.debUse DPKG, the Debian Package Manager.For Debian packaged binaries to be downloaded from any deb repo:Use APT, Aptitude or Synaptic (GUI).In our case we are going to use this method to save time at installing the most of the system software,except for when the packages aren't in the Official Debian repos or the experimental.I recommend not to install experimental packages as possible on this kind of Desktop to do notcomprise its integrity.We are not going to use this method to install the Web apps and libraries, to match the Apple's Macengineering/development Team.Flatpak, X-Apps or Snap packages Debian equivalentSoftware sources available:- Yet unavailableInstallation examples:- Flatpak (Is not distro specific, previously called xdg-app, avaible in Debian Experimental repos)- x-apps (Linux Mint)- snap (Ubuntu)They work like Android apps. They don't depend on any or many of the options like the desktopenvironment, libraries or libraries version like GTK 3.x, the distro or certain packages.They are bigger than programs because they contain all the packages required to work out of the box,hopefully in any distribution/version.There isn't official Debian development for these apps yet, but no matter they lack of separateinstaller like the Ubuntu's installer there are similar applications working similarly, like the listed in thesection \"Full compatible/portable Linux/Debian binaries\".Snap example:$ snap find$ sudo snap install <package-name>References:Web: http://www.webupd8.org/2016/04/ubuntu-1604-lts-to-offer-updates-via.html
File: Ubuntu 16.pdfWeb: http://segfault.linuxmint.com/2016/02/the-first-two-x-apps-are-ready/File: The first two X-Apps are ready Segfault.pdfFull compatible/portable Linux/Debian binariesThis type of applications distribution includes approaches like \"Self contained installers\" and\"AppImage\". ON advantage is that you can install the newest app version available, no matter whetheryou have old or new system libraries required to run the app. One disadvantage is the security, sincethe point of view that the distro application passed stability and other security tests. A seconddisadvantage is the space, due to every application have its own libraries copy, which differs of theshared libraries approach.References:Guide:Static, shared dynamic and loadable librariesSoftware sources available:- Web site, P2P and Developers repositories- Ubuntu PPA (Known exception)Installation examples:- Netbeans IDE- Sublime Text Editor- Aptana Studio 3 (Has a internal Java, Hot Spot)- Java (Cross platform applications)- Ruby (Cross platform applications)- C++ (Cross platform applications)- Some Themes, Icons and Cursors packages like Numix (For Jessie use Ubuntu 14.04 package)- Natron- AMD APP SDKRequirements:Make sure that the binaries are compatible with your distro, distro version and architecture (32 or 64bit) before proceed with any installation, and that if your system meets all the dependencies required,otherwise, the app is not going to work.Download:This package binaries are fetched from somewhere else rather than the Official Debian repos.Package distribution:Many of these apps come as self contained tar archive with extensions such as *.tar.xz and a self-contained installer in Bash. In the case just extract the tarball file and then run the Installer or directlythe executable binaries.
Java, Ruby and similar languages:The default Debian installation has a free version of Java runtime to run Java applications, but to runRuby applications you have to install ruby runtime. One method to install Ruby runtime is by installingKDE. See the KDE installation guide (LINK).Self contained installers:References:Web: http://www.matteomattei.com/create-self-contained-installer-in-bash-that-extracts-archives-and-perform-actitions/File: Create a self-contained installer in Bash Matteo Mattei.pdfAppImages:References:Topic: Linux apps that run anywhereWeb: http://appimage.org/File: AppImage _ Linux apps that run anywhere.pdfTopic: List of Apps that use AppImageWeb: https://bintray.com/probono/AppImagesFile: AppImages - Generic – Bintray.pdfSource Code installationDebian source codeSoftware sources available:- Localhost or Local Area Network Debian repository- Debian repository servers- Debian PPA repositoriesInstallation examples:- Apache2. Patching and recompilation or simple compilation from sources will improve security ifmade adding new security module to enable xinit to manage the service to add anti DDOS ability.- wine-development. Install development version of Wine from patched source will allow the versionto use the winetricks package.- Video drivers. Compilation and maybe patched of proprietary drivers are sometimes requirements tomake them work.- Linux kernel. Debianized kernel is required to add new functionality to the system.For Debian source code:You should use APT to download, manage the compilation (building process) and install packages.Puritan users install all the software they can this way. Unfortunately, not every package source wewant is available. My only excuse to install binaries directly from the Debian repos is I am saving timeby skipping the source compilation to complete the system environment as fast as possible.
I don't have any examples yet, but almost all packages in the Official Debian repositories installed byAPT have sources available to download, build and install in one step.This method is very useful in servers to compile custom package versions with extra or modifiedfeatures. It's the case of Apache2 which can be compiled from a scratch or be patched before therecompilation to add new Apache2 modules, like modules required to run a number of the Apache2service instances in parallel to add them to xinetd.Don't confuse builds from Debian source code and builds from source code. For example, going backto Apache, whether your choice is building from source you have to choose between Debian oranother source code. In case of source code analyze the pros and cons of the code chosen.Mini Howto - Building a Debian package from Debian sources:Before installing Debian source you need to compile the code, and next I recommend to create a DEBpackage to install with DPKG.To succeed, use one of these tutorials. I ordered every reference from the most appropriate to the lessappropriate to me:References:Topic: Building Debian packages from Debian sources - tutorial.Web: https://wiki.debian.org/BuildingTutorialFile: Building Debian packages from Debian source tutorial.pdfReferences:Topic: Working with Debian source packages.Web: https://wiki.debian.org/SourcePackageFile: Working with Debian source packages.pdfReferences:Topic: Building Debian packages with sbuild, the tools I use to build from Debian forks source code.Guide:Build packages from sourceSimpleScreenRecorderReferences:Topic: Look for the topic Deb builder in this guide.Guide: Source code & Debian forks source codeReferences:Topic: Rebuild a package using one of the methods described in the Debian package maintainersGuide:- Complete (re)build
- Autobuilder- Debuild command- Pbuilder package- Git-buildpackage command and similars- Quick rebuild- Command hierarchyIn my case, I have used pbuilder to make an isolated (chroot) environment to build experimentalsoftware in the past, for example, I had to build an early version of OpenSSL in Debian Gnu/LinuxLenny (5.x).Web: https://www.debian.org/doc/manuals/maint-guide/build.en.htmlFile: Chapter 6. Building the package.pdfWeb: https://www.debian.org/doc/manuals/maint-guide/index.en.htmlFile: Debian New Maintainers Guide.pdfWeb: https://wiki.ubuntu.com/PbuilderHowtoFile: PbuilderHowto.pdfNext information information may be useful to people interested in the package maintenance:Reference:Topic: Debian Build tool chain.Web: https://en.wikipedia.org/wiki/Debian_build_toolchainFile: Debian build toolchain.pdfSource code & Debian forks source codeFor Source code:Software sources available:- Web site, P2P and Developers repositoriesInstallation examples:- Oracle Java- WinRAR- The Linux Kernel- Hello World apps in c, C++, Java or PythonFor Forks source code:Software sources available:- Debian forks PPAsInstallation examples:- SimpleScreenRecorder
- LiSpeakDoes building from source apply only to compiled languages?Yes, it does apply only to compiled languages in this guide, but today the word build is used as theaction of putting away the code to know its current status and tagging it for future references with abuild number, no matter whether it is required to compile or not. After a number of builds you obtaina build called release or version. For example, web sites made with pure HTML5.A compiled language is a programming language whose implementations are typically compilers(translators that generate machine code from source code), and not interpreters (step-by-stepexecutors of source code, where no pre-runtime translation takes place).Before installing or use your source you need to compile the code, and if possible create a DEBpackage to install with DPKG to make the source fully compatible with an/your Debian system.Always check the extracted package permissions before proceed with a good installation. The most ofthe program should have proper file permissions configured, but sometimes you have to change themto make the installation work. If you get lost with sources use this survival guide, especially theexample of the installation of WinRAR or Oracle Java.For you to succeed compiling, building and installing, use one of these options:- Build from source using make file.- Build from source using \"Autotools\".- Build from source code using language specific compilation and building tools.- Build from source code using Pbuilder.- Build from source code using Deb Builder.- Build from Debian forks source code using sbuild.- Build the Linux Kernel and drivers.These methods help, among other things to create important files in the new Debian source Package.We didn't create anything while use sbuild, the program we use to Build source code using Debianforks sources, because the forks sources always contain a version of the files. IE: The installation ofSimpleScreeenRecorder, here:Guides:SimpleScreenRecorderTo know the structure of a Debian installation package, or if you are interested in the packagemaintenance:Reference:Topic: Debian Build tool chain.Web: https://en.wikipedia.org/wiki/Debian_build_toolchainFile: Debian build toolchain.pdf
Build Mini Howto:- Build from source using makefile:Tarballs are usually compressed and named with a double extension like *.tar.*gz.Some programs very limited or in early versions doesn't allow to build from custom directories butfrom /usr/src or /usr/local/src no matter whether you need to keep them safe from new systemupgrades (Confused?, continue reading and you will see the light!). Take special care on theseprograms when you upgrade the system.You download and extract the zipped archive or tarball to /usr/src/ or /usr/local/src.Once there the user has to look for the README and/or the INSTALLATION files to follow theinstallation instructions and/or scripts provided within the files.The most common way to install application from sources is based on the makefile (which containsdetails with which an executable application is built), by running next commands from the relativepath, in order:$ cd /usr/src$ ./configure$ make$ sudo make installSeldom times these commands need other parameters that change the compilation options, forexample:To change the data dir, run:$ ./configure --prefix=/usrOr before rerun a compilation or at the end of the process, do:$ make cleanIt is possible to summarize the steps using the tool checkinstall.usr/src/ VS /usr/local/src:/usr/src is meant for source code for the binaries that come with your system's installation. Forexample, it could contain the source code for your kernel, tools such as ls, passwd, cp, mv etc, whichare all installed BY YOUR DISTRIBUTION. If you upgrade your OS from source, all the source codewould go here, when you rebuild your system. You DON'T want to put any software that you install BYYOURSELF in here, because they may get overwritten when you upgrade your system. In general, filesthat are in /, /usr/bin, /usr/sbin, /bin, /sbin etc. have their source code in /usr/src.The /usr/local directory tree is meant to be used for software that you install by yourself, withoutusing the distribution CD(s). For example, /usr/local/bin, /usr/local/sbin are for the binaries that areinstalled by you separately, /usr/local/etc is for config files etc. Thus /usr/local/src is for source filesthat you yourself downloaded.If you upgrade your system, files under the /usr tree get overwritten, such as /usr/bin, /usr/sbin,/usr/src etc. However, anything under /usr/local will not be touched. This is why all the software youinstalled separately should go to /usr/local tree.Who's gonna use the programs? It depends on the installation but on files/directories permissionstoo.
Next ending of the section is for my personal use, but perhaps a little boring so you can skip it and goon the next one:In my case, I wan to show you an instance of the output of the command '$ ls -F' in the folder /usr/srcat a later point. Output:linux@ LiSpeak-master/ sirius-1.0.1/linux-headers-3.16.0-4-amd64/ netbeans-8.0.2-linux.sh* [email protected]/ Palaver-master/ virtualbox-4.3.18/linux-kbuild-3.16@ rar/End of Output.According to the information shown about the directory I will have to take care on these programsnext time before and after the next system update, as follows:The group of symbolic links and dirs: linux@, linux-headers-3.16.0-4-amd64/, linux-headers-3.16.0-4-common/, linux-kbuild-3.16@ correponds to the Linux Kernel and there is not a path to install it frombut from here.The script file: netbeans-8.0.2-linux.sh* is an executable to install netbeans. The installation ofnetbeans install the program under /user/local/. you can use commands like '$ whereis netbeans', '#whereis netbeans' and '$ locate netbeans' or '# locate netbeans' to find the new netbeans files afterthe installation. I only have to double check whether the file disappears after a system upgrade.The program directory LiSpeak-master/ contains a copy of the extracted package of LiSpeak-masterbut instead of running an installation in /usr/src, I pasted a copy of the package directory in my userhome/, otherwise the installation was going to fail. The only problem with an installation like this isthat in systems with more users they need copies of the whole program and set them up individually.Palaver-master/: Works almost as LiSpeak and also the installation works only made from a copy ofthe package extracted in the user home/. I am not using this software anymore since I replaced it withLiSpeak. I am not going to take care on this package after a system upgrade, and I can simply run anun-installation (see the documentation, or remove the directory and the symbolic links the thedirectories for binaries like /bin /sbin /usr/bin /usr/sbin /usr/local/bin or /usr/local/sbin. Run acommand like '$ where is palaver' to know what to remove exactly).The directory rar/ is copy of the WinRAR tarball extracted right here under /usr/src. I just followed theinstructions that come within the package to Linux in order to complete the installation. I only have tosirius-1.0.1/: I am not going to speak about this program not to mention that the program compilationdeposits everything or almost everything in its directory and suddenly would be affected after thesystem upgrade. Let's keep it in mind.vboxguest-4.1.18@ and virtualbox-4.3.18/. This are the symbolic link to VirtualBox guest additions andthe VirtualBox directory. The installation puts the executable files, libraries and other files where theygo, for example under /opt. LAter on youcan run a commands like '$ whereis VirtualBox' or '# whereis
VirtualBox' to know where some program files are located, for example, under /usr/bin/VirtualBoxand /usr/share/man/man1/VirtualBox.1.gz.Note: The files displayed with '$ ls -l' ending with \"@\" are symbolic links.References:Web: http://www.aboutdebian.com/compile.htmFile: Compiling Software With Debian Linux.pdf- Build from source using \"Autotools\":References:Topic: Introduction to the autotools (autoconf, automake, and libtool).Web: http://www.dwheeler.com/autotools/File: introduction-autotools.pdfTopic: A tutorial for porting to autoconf & automakeFile: A tutorial for porting to autoconf & automake.pdfTopic: Autoconf and Automake Tutorial.File: Autoconf and Automake Tutorial.pdfTopic: autoconf(1) - Linux man pageFILe: autoconf(1) - Linux man page.pdf- Build from source code using language specific compilation and building tools:Installation examples:- Oracle Java is an example of a program you can compile or build everywhere in the system, havingthe correct directory and files permissions, and of course, the source version of Java and thecompilation tools. Yuu required javac compilator.- For C programs source you require gcc.- For Phyton programs source you require pycomple.- Build from source code using Pbuilder:Pbuilder is very useful to make a Debian package from source code. Also works to build from Debiansource code as well as with Debian forks source code.Some advantages:1- You get the support to create package information required to build, such as the developer nameand email, the application and system version and architecture.2- You can build packages without pbuilder but you must already have all the build dependencies ofthe package that you are building installed on your running system.
3- You build in your own isolated environment. In my case, I have used pbuilder to make an isolated(chroot) environment to build experimental software in the past, for example, I had to build an earlyversion of OpenSSL in Debian Gnu/Linux Lenny (5.x).References:Web: https://www.debian.org/doc/manuals/maint-guide/build.en.htmlFile: Chapter 6. Building the package.pdfWeb: https://www.debian.org/doc/manuals/maint-guide/index.en.htmlFile: Debian New Maintainers Guide.pdfWeb: https://wiki.ubuntu.com/PbuilderHowtoFile: PbuilderHowto.pdf- Build from source code using Deb Builder:The advantage of Deb Builder is that you:Get the support to create package information required to build, such as the developer name andemail, the application and system version and architecture in a Graphical environment, improving theway Pbuild functions.To know the structure of a Debian installation package:Reference:Topic: Debian Build tool chain.Web: https://en.wikipedia.org/wiki/Debian_build_toolchainFile: Debian build toolchain.pdfThis is a Deb Builder quick start guide:References:Web: http://askubuntu.com/questions/8055/graphical-tool-for-creating-deb-packagesFile: Graphical tool for creating Deb packages.pdfWeb: http://alternativeto.net/software/gui-debian-package-maker/File: GUI Debian package maker alternatives.pdfThis is a text transferred from one of these type of tools, so can have an idea of what I mean, beforeyou look for something like this:\"This is a tool to create a simple DEbian package. Please make sure all binaries and support files foryour package are properly installed on the system before attempting to create a package as this toolswill place them in the package exactly where they are found on the system. Eg: Your binaries shouldbe in either /usr/bin creating a binary app package. Menu entries will be created by this tool and youcan edit them before final package creation. Please choose whether to: Create a new package fromscratch (include a License), repack an existing package, or unpack an existing deb file\"- Build from Debian forks source code using sbuild:
You can use sbuild to build source code and to Rebuild Debian source code too, however thecommands are not such as the ones I use to build from Debian forks source code, for example:References:Topic: Building Debian packages with sbuild, the tools I use to build from Debian forks source code.Guides:Build packages from sourceSimpleScreenRecorderBefore installing a program you have to know that the source has been built to work in yourDistribution (Debian)and for your Distribution's version and architecture (32 or 64 bit).If you use incompatible software like DPKG packages the installation process can damage the wholesystem.You can use sbuild to build source codes downloaded from the Ubuntu's PPA repository, for reasonslike:- There is not Official Debian source for this program.- The source available is pretty much an old version of the program and we need a newer version toimprove the security, install a patch (a hot-fix), or use a new feature or functionality that the oldversion hasn't, etc.The tool sbuild creates a Debian .deb installation archive ready to install by DPKG.It is important that the Debian team think on the creation of their own PPA repository, but it does notexist. With a Debian PPA the programs installation would be as easier as add the new PPA to thesystem and then install the source in a simple step with a tool.Once the build process has been completed with advanced tools like sbuild you don't need to test thenew .deb binary, because the program prepares a complete clean chroot environment based on thecurrent system or a system defined during the sbuild setup.It is possible that the build process fails due to system incompatibility. For example due to the lack of alibrary, libraries renamed or coded in other ways in the developer or maintainer Linux Box. In somecases it's easy to interpret the compilation errors to modify something in the source code to matchthe requirements like the distro, distro version, environment, library versions or paths, but perhaps ifyou are not an experienced applications and systems developer you'ĺl never find the error. Try to skipthese problems by compiling just Debian source code from the Official repos, or if unavailable,retrieving sources from the Debian forks like Linux Mint or Ubuntu from their PPA repositoriesInstallation examples:- SimpleSCreenRecorder- LiSpeak- Build the Linux Kernel and drivers:Sometimes you could need to rebuild or patch and rebuild the Linux Kernel, for certain reasons like toimprove the security to add a new device driver. The whole process is some different in comparisonwith any other builds in Debian.
Best way I know is to create a .DEB file to install with DPKG, the same treatment that I recommend toany build process.References:Topic: Rebuild the Linux Kernel.Web: https://wiki.debian.org/HowToRebuildAnOfficialDebianKernelPackageFile: How To Rebuild An Official Debian Kernel Package.pdfGuide: Build the Linux KernelFile: saveonlywithswriter.docReferences:Topic: Compile drivers in the Linux Kernel. Section drivers.Web: http://www.aboutdebian.com/compile.htmFile: Compiling Software With Debian Linux.pdfBinaries or Source Code from other operating systemsMacOS binaries or source codeSoftware sources available:- Alternative Package Managers sourcesInstallation examples:- nginx- JQueryFor Mac compatibility:Use an application's Package Manager to download binaries or source to build, from the optionalPackage Manager repos using certain protocols, mostly GIT and FTP.Source code built for a Windows or DOS versionSoftware sources available:- Microsoft's Windows world source code sources- Web site, P2P and Developers repositoriesInstallation examples:- Any C# code built with Mono, or adapted to Linux- Any code built for WindowsFor running MS Windows code:Write Windows code, for example .NET C# code in Visual Studio and attempt to run this code in Linux,for example using Mono.
You can also modify or write this code from scratch with tools like DotGNU, in Linux.Otherwise, compile the code in Windows and then use Wine in Linux to run it.References:Guides:Windows or DOS executable binariesWineProteusWindows or DOS executable binariesSoftware sources available:- Microsoft's Windows world executables sources- Web site, P2P and Developers repositoriesInstallation examples:- Proteus- WD External HDs lock- DLL registration- BIOS firmware upgrade from DOSFor Executing MS Windows binaries on Linux:With the application Wine or Wine with A software like PlayOnLinux you can run Windowsinstallations and programs under Linux. Wine is an alternative implementation of the Windows API.I am not running any Windows programs on my Linux Box, but Photoshop in a Virtual Machine. Youare free to change my method by installing and setting up your Wine accordingly. You have to knowthat many Adobe Adobe Photoshop versions run very well in Linux with Wine.Multiplatform installationDesktop ExtensionsSoftware sources available:- Desktop Extensions sourcesExamples:There are some types of applications icons that appear and work in certain areas on the Gnomedesktop:- Applets. Appear in the Notifications area panel at the bottom of the screen.- Extensions. Appear in the panel on top of the screen (Using the default panel location configuration).- Screenlets. Appear on any area on the screen. In Linux Mint they're called Desklets.Reference:Web: https://cinnamon-spices.linuxmint.com/extensions
Web: https://cinnamon-spices.linuxmint.com/deskletsweb: https://cinnamon-spices.linuxmint.com/appletsAccording to the installation method these Icons come from:- Applets: Debian application packages.- Screenlets: Screenlets application package.- Extensions: Desktop Extensions sources. They don't need to install new packages to work, mainlybecause the (DEB) package is the desktop itself.** Notice that Extensions is the only Icon that comes from the installation method \"DesktopExtensions sources\". The rest of Icons come from DEB applications.Anyway I am going to talk a little bit more of more Desktop possibilities.In Gnome, the Extensions are called \"Gnome Shell Extensions\".There are non Gnome (DEB) applications you can install to add features to your desktops. These typesof applications use their own names, for example:- Screenlets installed from Screenlets (Acctually here because Gnome hasn't its own Desklets like Minthas).- Applets installed from Cairo Dock.- Widgets installed from Conky.- Widgets installed from Slit.Other Desktop Environments use their own Icon and app enhancement approaches like Gnome. Forexample, KDE uses KDE Widgets.Some other Apps come as DEB package, or a compressed tarball, can be installed as DEB packages ormerged into directories, they are not applications but have the ability to change how the desktopslooks like, include App shapes and Icons.- Desktop icons- Desktop themes- System cursorsReferences:Web: http://gnome-look.org/Multiplatform Desktop ApplicationsSoftware sources available:- Multiplatform Desktop Applications sourcesThey work on every Desktop or OS type (Linux, OSX, Windows, Android, etc).
Installation examples:- Electron (Node + JS Multiplatform desktop apps, Info under Web-libs)- Chrome App Launcher (Chrome extensions)- Firefox Add-onsDominate activities regarding the software installation andmanagementKernelBuild the Linux KernelIf you don't have an Internet connection, for some distributions as SUSE the re-compilation process iseasier, because it comes with the needed software sources. In Debian GNU/Linux the re-compilationprocess explains you need to get some software not included in the installation disc, at least theNetinstall. The Debian way looks like easiest method in the market of distributions, because during theprocess you create a DEB package to install with DPKG in the final step. Nobody compiles the kernelfrequently. Anyways here the written process I use to compile Debian Squeeze which should work forthe Jessie release.1- Update the system:# apt-get update2- Install the needed packages:# apt-get install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential3- Download the kernel sources corresponding to your custom version of kernel and the patch, ifnecessary. If needed, visit the kernel web site to know the correct HTTP route. The site is:http://www.kernel.org/pub/linux/kernel/v2.6/. In the command line, verify the kernel valuecorresponding to the kernel version and the compressed and packaged file extensions, for example:2.6.21.3.tar.bz2. If needed run command 'uname -r' to know your actual kernel's version, before anydownload.# cd /usr/src# wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.28.7.tar.bz2# wget http://www.kernel.org/pub/linux/kernel/v2.6/patch-2.6.28.7.bz24- Create the directory from the compressed file:# tar xjf linux-2.6.28.7.tar.bz25- Create a symbolic link to the “linux” directory:# ln -s linux-2.6.28.7.tar.bz2 linux6- Apply the patch to the kernel sources (if patch is needed for you). Include in the commands thecorrect patch version before execute them. Be careful, but if you fail this command remove the kerneldirectory and repeat the command sequence since the kernel sources decompression:# cd /usr/src/linux# bzip2 -dc /usr/src/patch-2.6.28.7.bz2 | patch -p1 --dry-run
# bzip2 -dc /usr/src/patch-2.6.28.7.bz2 | patch -p17- Clean the 'make' utility. Use a copy of your current working kernel configuration file as base to yournew kernel .config file:# make clean && make mrproper# cp /boot/config-`uname -r` ./.config8- Configure the kernel:# make menuconfigAnd activate and deactivate the things you need. You have to know your system can stop running at allafter a kernel with a wrong configuration, so touch items but knowing what you are doing.For example, if you define you the objective to recompile a kernel to create a physical bridge using anold computer machine with two or more ethernet cards to communicate two sub-nets of the sameIntranet, you need to activate these kernel features:Next option replaces the old ipchains. I activated as * all the things inside the framework, becausesometimes the kernel menus are changing.[*] Network packet filtering (Netfilter)Next option have not be activated, to avoid lot of logs on screen:[ ] Network packet filtering debugging (NEW)Next Ethernet options activated like * (incorporated to the kernel, not as module “m”).<*> 802.1d Ethernet Bridging[*] netfilter (firewalling) support (NEW)Activate the other things of Netfilter to let NAT working correctly. This is needed to built a Linux routeror a brouter (bridge + router).9- Build the kernel:# make-kpkg clean# fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headersAfter --append-to-version= you can write any string that helps you identify the kernel, but it mustbegin with a minus (-) and must not contain whitespace. E.g.: “custom” as is used in the last set ofcommands.Wait while the kernel compiling ends.10- Install the kernel:# cd /usr/src/# ls -l# dpkg -i linux-image-2.6.28.7-custom_2.6.28.7-custom-10.00.Custom_i386.deb# dpkg -i linux-headers-2.6.28.7-custom_2.6.28.7-custom-10.00.Custom_i386.debThe packages create the /boot/grub/menu.lst. To verify the installed and used kernel version afterrebooting the system:# uname -rThis should display something like: 2.6.21.3-custom.References:Web: https://wiki.debian.org/HowToRebuildAnOfficialDebianKernelPackageFile: How To Rebuild An Official Debian Kernel Package.pdfFile: saveonlywithswriter.doc
References:Topic: Compile drivers in the Linux Kernel. Section drivers.Web: http://www.aboutdebian.com/compile.htmFile: Compiling Software With Debian Linux.pdfReferences:Topic: The Linux Kernel.Web: https://en.wikipedia.org/wiki/Linux_kernelFile: Wikipedia - Linux Kernel.pdfTopic: Hacking the Linux KernelWeb: https://kernelnewbies.org/KernelHackingFile: KernelHacking - Linux Kernel Newbies.pdfTopic: Install alternative kernels. XanMod is a Linux kernel compilation with custom modifications.Optimized to take full advantage of high-performance Workstations, PC Games,Media Centers and others. Supports all recent 64-bit versions of Debian and Ubuntu-based systems.Web: https://xanmod.org/File: download - XanMod Kernel.pdfDKMS (Dynamic Kernel Module Support)If we have a webcam, 3D graphics card, etc ... whose drivers, for whatever reason, are not maintainedin the main branch of the core but has beern made by a private company, we have to make a numberof preliminary steps before you can use it.Distributions, responsible for making life easier for the user to whom they are addressed, usuallyinclude precompiled drivers for the core versions they are using at the time, but what happens whenwe update the kernel? Let all who hold those modules have to re-compile.It usually happens that when we update the core but not a particular module such as the webcam or3D graphics card, you have to be a few days without you operate the webcam or 3D accelerationgraphics card, for example.Normally Debian GNU/Linux versions include source code of these drivers passing control over thesemodules to the same user.It is indeed an essential option if we ourselves who we compile our core.A few years ago it emerged a tool that facilitated the process of compiling the modules, calledmodule-assistant. The problem is that by module-assistant the user must prepare the system tocompile, choose which modules wants to install, and install them, etc ... and ends up being only aslightly more visual mask for the same system to compile manually.DKMS (Dynamic Kernel Module Support) is a system that also works with these latest versions ofsource code. Unlike module-assistant, does not require user interaction. The user simply selects which
modules with DKMS wants installed with each new kernel from synaptic and DKMS takes care of therest.DKMS at every startup checks which modules are installed and compiled for the running kernel ifneeded.This system makes the installation of modules as the driver of the webcam or 3D acceleration graphicscard an automated process.Examples of driver included in Debian to be installed and managed by DKMS:NvidiaATIOSSReferences:Topic: Example of usage of DKMS. We install a wireless card driver using DKMS. Guide: \"BasicNetworking\"Web: LINKWeb: blog.usuariodebian.comWeb: usuariodebian.blogspot.com.esFile: Blog usuario Debian.pdfFind out unfound driversMost of Windows and Linux drivers a re acompatible with all the main ditributions.Surprisingly, there are more drives for Linux than for Windows, because the most of Windows driversare compatible with Linux, but there are many Linux drivers incompatible with Windows.Think of and treat drivers as if they were software to install, because the most of drivers come aspackage or inside a package such as DEB, RPM or source code tarballs to build. Also there is a kernelcore or module (for example module.ko) to support the device you want to install.Topic: Compile drivers in the Linux Kernel. Section drivers.Web: http://www.aboutdebian.com/compile.htmFile: Compiling Software With Debian Linux.pdfWhether there is not possibility to find a driver suitable for your case in the Official Debianrepositories, search for it:- In the device drivers' vendor/manufacturer CDROM or web site.- Third driver web sites and FTPs like http://www.linux-drivers.org- Review the most important distro hardware compatibility lists, like the Ubuntu compatibility list.- There is always a way, for example, reverse engineering or driver development, otherwise replacethe device by a Linux compatible one. Remember to notify the vendor about the problem.References:
Topic: Linux Hardware Compatibility ListsWeb: http://www.linux-drivers.org/Topic: Ubuntu Certified hardwareWeb: http://www.ubuntu.com/certification/Topic: ALSA sound drivers and kernel modules listWeb: http://www.alsa-project.org/main/index.php/Matrix:MainGuides (Some are):Basic networkingWebcamPrinterSoundVideo Card3D acceleration and VRScannerGame Controllers and JoystickTopic: Analyze hardware informationGuide: Check hardware informationWorking with Kernel modulesTo work with modules you could use these commands:List modules loaded in the kernel:$ lsmodList correlations:$ lsmod | grep <MODULE>Remove module:# rmmodProbe module (Works until the next reboot):# modprobeRemove the module in probe:# modprobe -rLoad the module to the kernel (Install):# insmod$ man <COMMAND>Module related directories under /etc/:modprobe.d/ modules modules-load.d/Locating Module directories (For example, in a i686 computer):$ locate uvcvideo/lib/modules/3.16.0-4-686-pae/kernel/drivers/media/usb/uvc/uvcvideo.ko/usr/include/linux/uvcvideo.h/usr/src/linux-headers-3.16.0-4-common/include/uapi/linux/uvcvideo.hTo install other Wi-Fi cards you could require to work on other directories like: /etc/modules,/proc/modules, /lib/firmware, /usr/bin and /usr
References:Topic: These guides mention and/or include modules worksGuides:Basic NetworkingDKMS (Dynamic Kernel Module Support)WebcamVideo CardPackage ManagementBuild packages from sourceChoose a method to install software in Debian GNU/Linux:Warning: Sbuild is not the only way to install packages from source in GNU/Linux Deebian as isdescribed in the section \"Build Mini Howto\" of the guide: Source code & Debian forks source code.Build packages from source with sbuild:This time we are going to be setting up sbuild, a program that builds debian packages from source,because I couldn't find the package in any of the repos include the \"stable\", the repo I use as a\"conservative\" user.References:Topic: To check the program (package) availability on the Official web site.https://www.debian.org/distrib/packagesWeb: https://packages.debian.org/jessie/sbuildTopic: Setup sbuildWeb: https://wiki.debian.org/sbuildFile: Setup sbuild.pdfTo decide what package to test I considered:I know the Ubuntu's latest/current version: 2.22 Ubuntu 15.04 (Vivid Vervet), and it is not LTS (Longterm Support) version.To know the Ubuntu's ultimate version:Web: http://en.wikipedia.org/wiki/List_of_Ubuntu_releasesDebian has not any PPAs as Ubuntu and Mint. These distros are Debian Forks.Reference:Web: http://en.wikipedia.org/wiki/List_of_Linux_distributionsAnd I went to the PPA to verify the package:Web: https://launchpad.net/~maarten-baert/+archive/ubuntu/simplescreenrecorder/+packagesAnd my candidate is: simplescreenrecorder - 0.3.3-1~ppa1~vivid1
Notice that TODAY is the latest source created to a non LTS Ubuntu release. I don't the real status ofthe package but the green check icon says is all right.I will explain the complete process with simplescreenrecorder.So is how Ubuntu tests works, according to the Web site of Ubuntu:Ubuntu testingIn addition to our six-monthly stable releases and our daily development builds, we also make regulartesting releases during the development cycle. With just a few spare minutes, you can providevaluable feedback on a test release and help polish and stabilize. Please see the testing wiki page formore information on how to test and report back. Links to the test release downloads can be found onthe pages listed below.Please test the latest available edition. Thank you! [...]Web: http://www.ubuntu.com/info/testingSetup steps:Check your repository file /etc/apt/sources.listMy setup is a stable repo, i mean Jessie repo so I would create a stable (Jessie) package, because Jessieis the current stable Debian release.If you want to create a testing package you should add the testing repo to the source file. Currentlythe Debian release in the testing development branch is Stretch.To get started so you may build packages for Debian sid, run the following.Update sources:$ sudo apt-get update$ sudo apt-get install sbuildGenerate apt keys used internally by sbuild. This only needs to be done once:$ sudo sbuild-update --keygenIf you get an error about lack of entropy, you could do something else on the system, like browsing theweb or running find /usr or so. Or skip down to creating the chroot, and come back to this step.How to fix the lack of entropy:How to increase entropy pool without keyboard/mouse:There are two random number sources on linux - /dev/random and /dev/urandom. /dev/random willblock if there is nothing left in the entropy bit bucket. If your system does not have keyboard andmouse, you can use 'rngd' daemon to perform the task.To see the entropy:# cat /proc/sys/kernel/random/entropy_availOutput:1802
Install rngd daemon:$ sudo apt-get update$ sudo apt-cache search 'rngd'Output:rng-tools - Daemon to use a Hardware TRNG$ sudo apt-get install rng-toolsI see some output errors during installation:Setting up rng-tools (2-unofficial-mt.14-1) ...Job for rng-tools.service failed. See 'systemctl status rng-tools.service' and 'journalctl -xn' for details.invoke-rc.d: initscript rng-tools, action \"start\" failed.Processing triggers for systemd (215-17) ...Now, start the 'rngd' daemon using following command and monitor the entropy on the system.# rngd -r /dev/urandom -o /dev/random -f -t 1In another term:# watch -n 1 cat /proc/sys/kernel/random/entropy_availOutput:3429Again run the command to generate the keys, but there an error:$ sudo sbuild-update --keygenOutput:Generating archive key.gpg: keyblock resource `/root/.gnupg/secring.gpg': file open errorgpg: keyblock resource `/root/.gnupg/pubring.gpg': file open error...+++++......+++++gpg: can't create `/root/.gnupg/random_seed': No such file or directoryExiting from key generation with status 2.At this point I create the directory:# mkdir /root/.gnupgAnd rerun the command to generate the keys, and this time works:# sudo sbuild-update --keygenOutput:Generating archive key.gpg: keyring `/root/.gnupg/secring.gpg' createdgpg: keyring `/root/.gnupg/pubring.gpg' created.+++++Now you can stop the rngd demon.Add user to sbuild group:
$ sudo sbuild-adduser $LOGNAMEOutput:Adding user `esteban' to group `sbuild' ...Adding user esteban to group sbuildDone.# Setup tasks for sudo users:# BUILD# HOME directory in chroot, user:sbuild, 0770 perms, from# passwd/group copying to chroot, filtered# Maybe source 50sbuild, or move into common location.Next, copy the example sbuildrc file to the home directory of each user andset the variables for your system: cp /usr/share/doc/sbuild/examples/example.sbuildrc /home/esteban/.sbuildrcNow try a build: cd /path/to/source sbuild-update -ud <distribution> (or \"sbuild-apt <distribution> apt-get -f install\" first if the chroot is broken) sbuild -d <distribution> <package>_<version>End of the Output.This line will add your username so that it may use the sbuild command. Additional users may beadded by running sudo sbuild-adduser USER1 USER2 ....sbuild-adduser will prompt you to copy the template sbuild configuration in/usr/share/doc/sbuild/examples/example.sbuildrc to each user's ~/.sbuildrc, to be used as their usersbuild configuration. You can customize sbuild settings here, but you usually won't need to customizeanything. This should be done once per user.So I do enter:$ cp /usr/share/doc/sbuild/examples/example.sbuildrc /home/esteban/.sbuildrcNext ... *logout* and *re-login*The next step uses sbuild-createchroot to create a chroot used by sbuild meant for building packagestargeting Debian sid main. The chroot is saved as a tarball in /var/lib/sbuild/sid-amd64.tar.gz. The aptrepository used is http://ftp.debian.org/debian. This can be changed to use a URL for a local mirror of
the Debian archive. You can run this command once per distribution you want, and pass --arch=i386 tocreate a chroot for a different architecture (the default is your host architecture). i386 = i686.Before proceed with this command take time to look at the line:tarball=/var/lib/sbuild/sid-amd64.tar.gz sid `mktempFor example, if you are using i386 architecture (And it is supported by the package):# archOutput:i386A part of the command may be:tarball=/var/lib/sbuild/sid-i386.tar.gz sid `mktempIn my case:# archOutput:x86_64So, I am going to preserve the string amd-64, as appears in the most of my packages.For example, if you are implementing a new package is going to go to \"unstable\" acronym of \"sid\", butI am going to build a package from a Jessie Debian source, so I will change that entries in thecommand, so the part will look like this:tarball=/var/lib/sbuild/jessie-amd-64.tar.gz jessie `mktempNote:You must prepare the environment for a certain package, for example I attempt to build the PPApackage simplescreenrecorder from Ubuntu, because there is not Debian package in the OfficialDebian repos.I choose to put \"jessie\" in the command because I am using Jessie, the stable Debian release whichhas not simplescreenrecorder yet, but if I were using a newer Debian release I could choose it, forexample using Strech I would choose the word \"testing\", because TODAY Stretch is in the testingdevelopment branch, otherwise I would choose \"Sid\" which I already said is ALWAYS the is unstable.And the next is the complete command, to create the dedicated clean environment in the \"chroot\"directory:$ sudo sbuild-createchroot --make-sbuild-tarball=/var/lib/sbuild/jessie-amd64.tar.gz jessie `mktemp-d` http://ftp.debian.org/debianConfiguration:If you're setting up sbuild for personal use, instead of as part of a build server, you might want to usethe following options in your ~/.sbuildrc. These can also be set on the command line when runningsbuild.
Toggle line numbers 1 $build_arch_all = 1; 2 $build_source = 1; 3 $distribution = 'sid';The $build_arch_all variable will enable building of architecture independent packages by default.Since official build servers are used to build an existing package for a different architecture (e.g., theuploader builds for i386, uploads arch-i386 and arch-all binary packages, and a build server buildsarch-amd64 packages), this is off by default. You can also enable this per build by passing -A to sbuild.The $build_source variable will enable building of source packages by default. Again, on official buildservers, this isn't wanted, but for personal use it's generally useful. You can enable this per build with-s.The $distribution variable will set the distribution to build for as 'sid'. You can set the distribution perbuild by passing it to the -d option. Be careful not to use -d just to select a specific chroot (use -c forthat, see below), as it will override the distribution set in debian/changelog and may lead you toupload a package to a distribution it was not intended for.To edit the default user configuration file:$sudo nano /home/esteban/.sbuildrcEverything is commented out by default except for the number \"1\" at the end of the file.The file overwrites the default configuration in the file /etc/sbuild/sbuild.confI am not doing anything in these files at the moment.Updating:The chroot should be up-to-date before building packages. Use the sbuild-update to perform updates.First, note the name of the sbuild chroot to be updated. All sbuild chroots built with sbuild-createchroot will have a suffix of '-sbuild' thus to find the names of all sbuild chroots, run thefollowing.Toggle line numbers 1 schroot -l | grep sbuildIf you followed the setup instructions above, there should be one chroot named source:sid-$arch-sbuild where $arch is the architecture installed on your machine.After noting the name of your sbuild chroot, run the following.
Toggle line numbers 1 sudo sbuild-update -udcar sid-$archI replace \"sid\" and \"$arch\" with my current system \"jessie\" and architecture \"amd64\":$ sudo sbuild-update -udcar jessie-amd64The arguments '-udcar' will tell sbuild-update to run an apt-get update, dist-upgrade, clean, autoclean,and autoremove in the chroot.You can also pass --apt-update --apt-distupgrade to the individual sbuild invocation to update thetemporary copy of the build chroot, but this won't cause any changes to happen in the persistent copyof the chroot (in the .tar.gz file). So if you are building more than once, you should run sbuild-updateinstead of relying on this.Next step shown in the Debian Wiki is building, but we are going to see it later on, with the packagesimplescreenrecorder.References:Topic: sbuild setup.Web: https://www.youtube.com/watch?v=-XwhslBL4TENote: Remember that these strings like on my posts:–apt-update –apt-distupgrade that appear to be em dashes are two single dashes.See the guide SimpleScreenRecorder to know how to build a source package.Multi ArchitectureTo create sand boxed environments like chroot and schroot or in case of you get the error wheninstalling DEB packages: “wrong architecture i386” you have to execute the following command linesas an administrator in 64bit platforms:# dpkg --add-architecture i386# apt-get updateAt this point I have installed Debian multiarchitecture to support 32 bit programs. They are gonna beinstall under 32bit directories as well.References:Best example is the Guide Teamviewer.By default, your system will install packages for your default system architecture.Before installing programs of another architecture in your system or sand boxed environments likechroot and schroot verify the availability of these in the repositories:
$ sudo nano /etc/apt/sources.list$ apt-get update$ apt-cache search nmap$ apt-cache show nmapFind the line \"Architecture\" in the Output.$ sudo apt-get install nmap:i386References:Topic: To create 32bit chroot envronmentsWeb: http://askubuntu.com/questions/29665/how-do-i-apt-get-a-32-bit-package-on-a-64-bit-installationFile: 64 bit - How do I apt-get a 32-bit package on a 64-bit installation_ - Ask Ubuntu.pdfStatic, shared dynamic and loadable librariesYou can resolve system problems and software installation problems working with Linux libraries.References:Topic: Understand libraries in LinuxWeb: http://www.yolinux.com/TUTORIALS/LibraryArchives-StaticAndDynamic.htmlFile: Static, Shared Dynamic and Loadable Linux Libraries.pdfTopic: Writing a libraryWeb: https://blog.feabhas.com/2014/04/static-and-dynamic-libraries-on-linux/File: Static and Dynamic Libraries on Linux - Sticky BitsSticky Bits.pdfTopic: Mentions to the program 'update-alternatives' to re-link libraries depending on the user needs.Guides:3D Acceleration and VRJavaChange the default login screenTopic: OBS software is not working in Debian Jessie. For the installation attempt I downloaded a pre-compiled version and tested the dependencies before proceed with the installation which coulddamage the system. I tried to resolve the problem linking and renaming libraries carefully and loggingeverything but the workaround won't work. The problem is libraries version mistmatches within OBSand the OS.Guide:OBSTopic: In these guides I create symbolic links for executable files. Symlinks are also used to linklibraries.Guides:Sublime Text Editor
Netbeans IDEContainers virtualization techniques such as the used by LXC (Linux Containers) or Oracle Solaris OSvirtualization take advantages of shared libraries, to avoid duplicate libraries between virtualmachines.System Package Managers: Synaptic, Aptitude, DPKG, APT, Gdebi, ComplementaryPackage management commands summary:Content:Aptitude: Fetch packages. Installs. Has Management options.Synaptic: Fetch packages. Installs. Has Management options.APT: Fetch packages. Installs. Has Management options.DPKG: Local packages. Installs. Has Management options.Gdebi: Local packages, Fetch dependencies. Installs. Has Management options.Complemetary: Various. Have options unfound in common package managers.Aptitude:--------->(I have a tutorial in LE SF DVD 5 or 6)Open Aptitude Package Manager:$ aptitudeReinstall packages already installed:$ sudo aptitude reinstall libgl-mesa-dri libgl1-mesa-glxShows a listing of each INSTALLED reverse dependency a package has. Reverse dependency means thepackages that depends on the package specified in the command line. the output includes the type ofdependency (Depends or Recommends). In other words, maybe any of the packages in the listinstalled this package before::$ aptitude why pppOutput:i task-xfce-desktop Recommends network-manager-gnomei A network-manager-gnome Depends network-manager (>= 0.9.10)i A network-manager Recommends ppp (>= 2.4.6)End of.Notes:To list every installed package by date use '$ grep 'install' /var/log/dpkg.log.1 | cut -f4 -d' ''Also see the command 'apt-cache rdepends --installed ppp'.
Synaptic:--------->Open Synaptic Package Manager:$ synaptic-pkexecAPT:----->APT 'apt-get' shorthand to install DEB package from servers:$ sudo apt install pack1-nameDisplay a list of the package dependencies:$ apt-cache depends package-name$ apt-cache depends fofixShow the version of the installed package / Verify whether the package has been installed or not.Verifywhat repository does the package come from, IE: main, contrib or non-free:$ sudo apt-cache policy firmware-linux-nonfreeRetrieves from the sources database the listing of EVERY AVAILABLE, INSTALLED or NOT reversedependencies of any package, INSTALLED or NOT. Reverse dependency means the packages thatdepends on the package specified in the command line. Depends on the configuration in the sourcesfiles, ie: /etc/apt/sources.list. In other words, any of the packages in the output are going to install thepackage mentioned to resolve dependencies:$ apt-cache rdepends bash:amd64Shows a listing of each INSTALLED reverse dependency a package has. Reverse dependency means thepackages that depends on the package specified in the command line. The equivalent option inaptitude, ie: 'aptitude why ppp', shows also the type of dependency (Depends or Recommends). Inother words, maybe any of the packages in the list installed this package before:$ apt-cache rdepends --installed pppNote: To list every installed package by date use '$ grep 'install' /var/log/dpkg.log.1 | cut -f4 -d' ''Look for OpenCL packages in the official repos main contrib non-free (depends on configuration in theconfig files, primarily /etc/apt/sources.list):$ sudo apt-cache search opencl icd | lessRetrieve complete package information, include: Name, Version, Installed-Size, Maintainer,Architecture, Replaces, Provides, Dependencies, Conflicts, Breaks, Description, Homepage, Tag,Section, Priority, Filename, Size, Checksums numbers.
$ sudo apt-cache show nanoReturn what my package breaks when removed:$ apt-cache show ppp |grep '^Breaks: 'Retrieve complete package information, include: Name, Version, Installed-Size, Maintainer,Architecture, Replaces, Provides, Dependencies, Conflicts, Breaks, Description, Homepage, Tag,Section, Priority, Filename, Size, Checksums numbers. Alternative version to option 'show' alone.$ sudo apt-cache showpkg fofixFind the DEB package the specified file comes from. The package does not need to be installed orfetched. The command does not work with directories names:$ apt-file search libtxc.dxtn.soNotes:If the file does not exist in the package databases (local and in the sources lists) the Output is notgoing to return anything.The same example using current directory (Working directory, with relative path defined in thecommand options. The path is not important for the command, will find only the file installed in theDPKG database, instead of files in alternative paths, for example apps under /opt taht could have acopy of the file in their own directories):$ apt-file search libnssdbm3.soOutput composed by the package and where file has been or would be placed:icedove: /usr/lib/icedove/libnssdbm3.soicedove-dbg: /usr/lib/debug/usr/lib/icedove/libnssdbm3.soiceweasel: /usr/lib/iceweasel/libnssdbm3.soiceweasel-dbg: /usr/lib/debug/usr/lib/iceweasel/libnssdbm3.solibnss3: /usr/lib/x86_64-linux-gnu/nss/libnssdbm3.soEnd of.The same example using the absolute path, to a second file with the same name:$ apt-cache search /opt/firefox/libnssdbm3.soOutput:EMPTYEnd of.You DON'T USE THIS COMMAND before read this information. Like the option clean, autoclean clearsout the local repository of retrieved package files (in /var/cache/apt/archives. The difference is that itonly removes package files that can no longer be downloaded, and are largely useless. This allows acache to be maintained over a long period without it growing out of control. The configuration optionAPT::Clean-Installed will prevent installed packages from being erased if it is set to off.$ sudo apt-get autocleanRemove unused packages automagically. Is used to remove packages that were automatically installedto satisfy dependencies for other packages and are now no longer needed:$ sudo apt-get autoremove
clean clears out the local repository of retrieved package files. It removes everything but the lock filefrom /var/cache/apt/archives/ and /var/cache/apt/archives/partial/:$ sudo apt-get cleanRead what really would be removed if I remove certain package:$ echo $(apt-get --dry-run remove ppp | grep '^Remv ' | cut -d' ' -f2)Output:network-manager-pptp pptp-linux pppEnd of.Install packages (depends on the configuration in /etc/apt/sources.list files):$ sudo apt-get install package1-name package2-name packageX-nameResolve un-specified dependencies before re-run the package installation command 'sudo apt-getinstall package-name':$ sudo apt-get -f installNote: Use Gdebi to resolve and install dependencies DEB packages fetched previously.Update the distro release:(PENDING: Seldom commands involved in the process)Update the distro:$ sudo apt-get -u upgradeReferences:Guides:Update the system and applicationsSystem version upgrade procedureUpdate the package availability in /etc/apt/ and /etc/apt/sources.list:$ sudo apt-get updateRemove and purge packages:$ sudo apt-get remove package-namePurge packages:$ sudo apt-get purge package-nameDPKG:-------->The standard way to repair the dpkg database is to use this command:sudo dpkg --configure -a
Display an Alphabetical list of all the packages installed on the system:$ dpkg --get-selections | cut -f1$ dpkg --get-selections | cut -f1 | more$ dpkg --get-selections | cut -f1 | lessInstall a local package:$ sudo dpkg -i package-archive.debInstall a group of packages, autoresolving the dependencies order:$ sudo dpkg -i *$ sudo dpkg -i pack1-filenumber-*For the package on local that matches the filter, does the same of 'apt-cache show': Retrieve completepackage information, include: Name, Version, Installed-Size, Maintainer, Architecture, Replaces,Provides, Dependencies, Conflicts, Breaks, Description, Homepage, Tag, Section, Priority, Filename,Size, Checksums numbers. Alternative version to option 'show' alone:$ ls /var/cache/apt/archives/*fofix (PRESS TAB KEY)$ dpkg -I /var/cache/apt/archives/*fofix*$ dpkg -I /var/cache/apt/archives/fofix_3.121-3_all.debFind information of packages, based on the local DPKG package database:$ sudo dpkg -l | grep linux*Find information of packages, based on the local DPKG package database. This modification avoids totrim the package name column to show complete large package names:COLUMNS=132 dpkg -l | grep linuxCOLUMNS=132 dpkg -l | grep 'linux'For example to find out the installed version of a package, based on the package name you can searchfor it using variants in the command:$ COLUMNS=132 dpkg -l | grep gtk$ COLUMNS=132 dpkg -l | grep gtk*$ COLUMNS=132 dpkg -l | grep gtk-$ COLUMNS=132 dpkg -l | grep gtk-2$ COLUMNS=132 dpkg -l | grep gtk-3$ COLUMNS=132 dpkg -l | grep libgtk$ COLUMNS=132 dpkg -l | grep 'libgtk'$ COLUMNS=132 dpkg -l | grep libgtk2*$ COLUMNS=132 dpkg -l | grep libgtk3*Show where every package file has been installed on the system:$ dpkg -L amd-opencl-icd:amd64Note: \":amd64\" means the architecture of the packages which has been installed on the system.
Find information of INSTALLED (ii) packages, based on the local DPKG package database:$ dpkg-query -l linux* | grep iiReconfigure an installed package (Some program display text-based screens. Reconfigure screens ofsystem services are incompatible with the new systemd program, at the moment):$ sudo dpkg-reconfigure x11-commonNote: Notice the command is to reconfigure the package, is not to reinstall it (see aptitude option) orto configure the package options usually under /etc/ or /home/userXXYY/ as a hidden file beginningwith \".\". This is not the only way to setup programs in the terminal. For example, to configure theprogram Xorg use the option --configure: 'Xorg --configure'.Remove a package on local:$ sudo dpkg -r package-archive.debPurge the package with:$ sudo dpkg -P APPLICATION_NAMEGdebi:------->Install a local DEB package resolving dependencies automagically (dependes on sources.list files):$ sudo gdebi package.debComplementary:--------------->More grep options for commands that use | (pipes):$ man grepShow current distro release:$ cat /etc/issueBackup sources.list file:$ cp -dpR /etc/apt/sources.list /etc/apt/sources.listBAKWeed unnecessary Debian packages. Caution, please:$ sudo apt-get install debfoster$ sudo debfoster$ man debfosterTo list all recursive dependencies of a specific package (List of all packages that this package dependson):
$ sudo debfoster -d pppCheck whether processor supports KVM (Intel VT or AMD-V). If vmx or svm are present, architectureis 64bit:# egrep '(vmx|svm)' --color=always /proc/cpuinfoFind files in the system:$ find /root -iname *icy.txtList every installed package by date (No a package tool with the ability to do this!):$ grep 'install' /var/log/dpkg.log.1 | cut -f4 -d' 'Locate files like libraries in the system:$ locate r600_dri.soDisplay the list of the packages in the APT cache:$ ls /var/cache/apt/archives$ ls /var/cache/apt/archives | more$ ls /var/cache/apt/archives | lessList files or trim file strings when used with jockers:$ ls$ ls package-name*$ ls *file-name*$ ls packages*.deb$ ls -hal libOpenCL.so*$ ls .*$ ls -FShow command man pages:$ man commandRuns shell scripts. Here because some actually support tasks over packages:$ sh packageinstallator.shDisplay sources.list file (main file):$ sudo nano /etc/apt/sources.listSometimes you need to reboot after a installation (At least applies to kernel 3.19 and below):# rebootSome corruption in apt db, how to fix. Backup first, and then run:$ sudo rm /var/lib/apt/lists/* -vf$ sudo apt-get update
To finish the last interrupted installation if it complains:$ sudo dpkg --configure -aYOu could require one o these to resolve dependencies:$ sudo apt-get -f installNote: For DEB packages onlocal use the command gdebi instead of apt-get -f install.Display running Linux kernel version:$ uname -rFind commands (programs) and their files locations, include binaries with -b, manual sections with-m, sources with -s, and manual entries with -v:$ whereis blender$ whereis blender277More (PENDING):Comamnds to list all the apps installed int the system. References:(BLOG ARTICLE LINK)Pdf: command line - How can I list all applications installed in my system_ - Ask Ubuntu.pdfWeb: http://askubuntu.com/questions/433609/how-can-i-list-all-applications-installed-in-my-systemBasic commands to manage file and directories.Downlaod and install free sources from official repos (IE: Apache2 to add Apache modules to run anti-DDOS instances from xinit).Alternatives to extract and compress archives (.gz)Alternatives to make and open source tarballs (.tar)Alternatives to download packages or source (Web, curl, wget, git, SVN, Mercury).Alternatives to install apps no packages (IE: References: Guides: Flatpak, X-Apps or Snap packagesDebian equivalent, Desktop Extensions, Multiplatform Desktop Applications).Alternatives to install app (or other type of packages such as libs) which are not for Debian and are notDEB packages (IE: References: Guide: Linuxbrew - libsass and sassc).Multimedia repo querying installation.How to download installation KEYS from MIT (Michigan Institute of Technology) to be able to updaterepositories sources databases.How to add an architecture like i386 to install 32 bit packages on 64bit systems.Setup (Dangerous) or install (Certain)PPA repo sources (like KXStudio).Kernel module commands, for example to install driver modules after driver installation.Kernel recompilation to add Kernel options to add support to certain software or technology.Verify download integrity, PGP, GPG, GNUPG, SeahorseA- Verify the integrity of the packages downloaded already:Verify the repo setup:$ sudo nano /etc/apt/sources.listUpdate the repos:
$ sudo apt-get updateSearch the program in the repos:$ sudo apt-cache search 'debsums'Output:debsums - tool for verification of installed package files against MD5 checksumsEnd of Output.Show program information, include description, MD5, SHA1 ans SHA2 (256) checksum numbers anddependencies:$ sudo apt-cache show 'debsums'Install the program:$ sudo apt-get install debsumsRuns simple verifications:$ debsums | head -10$ debsums | moreUse the keys CTRL + C to return to the shell prompt.Debsums will verify the files on your system against the files in the package repositories (and tell you ifthey differ)The complete Output is too large an then we need to filter the results to get what checksumverification has another status rather than \"OK\".Most packages include the necessary info to verify them against the repositories, but some don't, sofirst up, run codes:Dont run '$ sudo apt-get clean' prior to every '$ sudo debsums_init', the action will remove all the filesin /var/cache/apt/archives:$ sudo debsums_initThis will generate file hashes for any packages that lack them (note, this involves downloading thepackage from the repositories)My Output displays:Finished generating md5sums!Checking still missing md5files...End of output.Maybe some packages could not be verified. But let's continue.Take a look at the manuals:$ man debsumsTo list only packages without MD5 verification:$ sudo debsums -lTo list \"silently\" only the packages with verification problem:$ sudo debsums -sThis process can take a log time to finish.I you get any problem you can remove the program with issues, for example:$ sudo apt-get remove APPLICATION_NAMEOr you'd better purge the package with:$ sudo dpkg -P APPLICATION_NAMETo interpret the results:
Search
Read the Text Version
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347
- 348
- 349
- 350
- 351
- 352
- 353
- 354
- 355
- 356
- 357
- 358
- 359
- 360
- 361
- 362
- 363
- 364
- 365
- 366
- 367
- 368
- 369
- 370
- 371
- 372
- 373
- 374
- 375
- 376
- 377
- 378
- 379
- 380
- 381
- 382
- 383
- 384
- 385
- 386
- 387
- 388
- 389
- 390
- 391
- 392
- 393
- 394
- 395
- 396
- 397
- 398
- 399
- 400
- 401
- 402
- 403
- 404
- 405
- 406
- 407
- 408
- 409
- 410
- 411
- 412
- 413
- 414
- 415
- 416
- 417
- 418
- 419
- 420
- 421
- 422
- 423
- 424
- 425
- 426
- 427
- 428
- 429
- 430
- 431
- 432
- 433
- 434
- 435
- 436
- 437
- 438
- 439
- 440
- 441
- 442
- 443
- 444
- 445
- 446
- 447
- 448
- 449
- 450
- 451
- 452
- 453
- 454
- 455
- 456
- 457
- 458
- 459
- 460
- 461
- 462
- 463
- 464
- 465
- 466
- 467
- 468
- 469
- 470
- 471
- 472
- 473
- 474
- 475
- 476
- 477
- 478
- 479
- 480
- 481
- 482
- 483
- 484
- 485
- 486
- 487
- 488
- 489
- 490
- 491
- 492
- 493
- 494
- 495
- 496
- 497
- 498
- 499
- 500
- 501
- 502
- 503
- 504
- 505
- 506
- 507
- 508
- 509
- 510
- 511
- 512
- 513
- 514
- 515
- 516
- 517
- 518
- 519
- 520
- 521
- 522
- 523
- 524
- 525
- 526
- 527
- 528
- 529
- 530
- 531
- 532
- 533
- 534
- 535
- 536
- 537
- 538
- 539
- 540
- 541
- 542
- 543
- 544
- 545
- 546
- 547
- 548
- 549
- 550
- 551
- 552
- 553
- 554
- 555
- 556
- 557
- 558
- 559
- 560
- 561
- 562
- 563
- 564
- 565
- 566
- 567
- 568
- 569
- 570
- 571
- 572
- 573
- 574
- 575
- 576
- 577
- 578
- 579
- 580
- 581
- 582
- 583
- 584
- 585
- 586
- 587
- 588
- 589
- 590
- 591
- 592
- 593
- 594
- 595
- 596
- 597
- 598
- 599
- 600
- 601
- 602
- 603
- 604
- 605
- 606
- 607
- 608
- 609
- 610
- 611
- 612
- 613
- 614
- 615
- 616
- 617
- 618
- 619
- 620
- 621
- 622
- 623
- 624
- 625
- 626
- 627
- 628
- 629
- 630
- 631
- 632
- 633
- 634
- 635
- 636
- 637
- 638
- 639
- 640
- 641
- 642
- 643
- 644
- 645
- 646
- 647
- 648
- 649
- 650
- 651
- 652
- 653
- 654
- 655
- 656
- 657
- 658
- 659
- 660
- 661
- 662
- 663
- 664
- 665
- 666
- 667
- 668
- 669
- 670
- 671
- 672
- 673
- 674
- 675
- 676
- 677
- 678
- 679
- 680
- 681
- 682
- 683
- 684
- 685
- 686
- 687
- 688
- 689
- 690
- 691
- 692
- 693
- 694
- 695
- 696
- 697
- 698
- 699
- 700
- 701
- 702
- 703
- 704
- 705
- 706
- 707
- 708
- 709
- 710
- 711
- 712
- 713
- 714
- 715
- 716
- 717
- 718
- 719
- 720
- 721
- 722
- 723
- 724
- 725
- 726
- 727
- 728
- 729
- 730
- 731
- 732
- 733
- 734
- 735
- 736
- 737
- 738
- 739
- 740
- 741
- 742
- 743
- 744
- 745
- 746
- 747
- 748
- 749
- 750
- 751
- 752
- 753
- 754
- 755
- 756
- 757
- 758
- 759
- 760
- 761
- 762
- 763
- 764
- 765
- 766
- 767
- 768
- 769
- 770
- 771
- 772
- 773
- 774
- 775
- 776
- 777
- 778
- 779
- 780
- 781
- 782
- 783
- 784
- 785
- 786
- 787
- 788
- 1 - 50
- 51 - 100
- 101 - 150
- 151 - 200
- 201 - 250
- 251 - 300
- 301 - 350
- 351 - 400
- 401 - 450
- 451 - 500
- 501 - 550
- 551 - 600
- 601 - 650
- 651 - 700
- 701 - 750
- 751 - 788
Pages: