FedoraForum.org - Fedora Support Forums and Community
Page 1 of 2 12 LastLast
Results 1 to 15 of 27
  1. #1
    Craig Pemberton Guest

    Question The most terrifying part of Linux

    When I first started learning about Linux, the output of rpm was the most demoralizing thing ever.

    rpm
    RPM version 4.4.2
    Copyright (C) 1998-2002 - Red Hat, Inc.
    This program may be freely redistributed under the terms of the GNU GPL

    Usage: rpm [-aKfgpWHqV] [-aKfgpWHqVcdils] [-aKfgpWHqVcdilsaKfgpWHqV] [-aKfgpWHqVcdilsaKfgpWHqV] [-aKfgpWHqVcdilsaKfgpWHqV] [-aKfgpWHqVcdilsaKfgpWHqVK] [-aKfgpWHqVcdilsaKfgpWHqVK] [-aKfgpWHqVcdilsaKfgpWHqVKi] [-aKfgpWHqVcdilsaKfgpWHqVKiv] [-aKfgpWHqVcdilsaKfgpWHqVKiv] [-aKfgpWHqVcdilsaKfgpWHqVKiv?] [-a|--all] [-f|--file] [-g|--group]
    [-p|--package] [-W|--ftswalk] [--pkgid] [--hdrid] [--fileid]
    [--specfile] [--triggeredby] [--whatrequires] [--whatprovides]
    [--nomanifest] [-c|--configfiles] [-d|--docfiles] [--dump] [-l|--list]
    [--queryformat=QUERYFORMAT] [-s|--state] [--nomd5] [--nofiles]
    [--nodeps] [--noscript] [--comfollow] [--logical] [--nochdir]
    [--nostat] [--physical] [--seedot] [--xdev] [--whiteout]
    [--addsign] [-K|--checksig] [--delsign] [--import] [--resign]
    [--nodigest] [--nosignature] [--initdb] [--rebuilddb] [--aid]
    [--allfiles] [--allmatches] [--badreloc] [-e|--erase <package>+]
    [--excludedocs] [--excludepath=<path>] [--fileconflicts] [--force]
    [-F|--freshen <packagefile>+] [-h|--hash] [--ignorearch] [--ignoreos]
    [--ignoresize] [-i|--install] [--justdb] [--nodeps] [--nomd5]
    [--nocontexts] [--noorder] [--nosuggest] [--noscripts]
    [--notriggers] [--oldpackage] [--percent] [--prefix=<dir>]
    [--relocate=<old>=<new>] [--repackage] [--replacefiles]
    [--replacepkgs] [--test] [-U|--upgrade <packagefile>+]
    [-D|--define 'MACRO EXPR'] [-E|--eval 'EXPR'] [--macros=<FILE:...>]
    [--nodigest] [--nosignature] [--rcfile=<FILE:...>] [-r|--root ROOT]
    [--querytags] [--showrc] [--quiet] [-v|--verbose] [--version]
    [-?|--help] [--usage] [--scripts] [--setperms] [--setugids]
    [--conflicts] [--obsoletes] [--provides] [--requires] [--info]
    [--changelog] [--xml] [--triggers] [--last] [--filesbypkg]
    [--fileclass] [--filecolor] [--filecontext] [--fscontext]
    [--recontext] [--fileprovide] [--filerequire] [--redhatprovides]
    [--redhatrequires] [--buildpolicy=<policy>] [--with=<option>]
    [--without=<option>]
    Seeing as rpm is a very basic tool that most new users need to use very early on in their Linux experiences, I feel that this could be more informative. I can hardly read the alphabet soup, let alone make any use of it.

    The above is the same as "rpm --usage" so for some crazy people who really want it can still have access to it if it changes.

    I was thinking something along these lines might be more eliucidating:

    Code:
    The RPM Package Manager (RPM) is a powerful command line driven
    package management system capable of installing, uninstalling,
    verifying, querying, and updating software packages. 
    
    Query mode options (after -q)
      -i print package information
      -c            		   list all configuration files
      -d		                   list all documentation files
      -l                               list files in package
      -a                               list all packages
      -f                               list package(s) owning file
      --whatrequires                   list the package(s) which require a dependency
      --whatprovides                   list the package(s) which provide a dependency
    
    Install/Upgrade/Erase mode options (after -i or -U or -e)
      -h                               print hash marks as package installs (good with -v)
    
    Verify options (after -V):
      --nofiles                        don't verify files in package
      -a                               query/verify all packages
      -f                               query/verify package(s) owning file
    
    Common options for all rpm modes:
      --quiet                          provide less detailed output
      --verbose, -v                    provide more detailed output
      --version                        print the version of rpm being used
    
    Help options:
      --help, -?                       Show a more complete help message
      --usage                          Display a concise usage message
    
    Examples:
    rpm -q sendmail			#see if sendmail is installed, and print version info
    rpm -qic bash			#give info for  and list all configuration files
    rpm -qa | grep font		#locate all installed packages with font in the name
    rpm -q --whatprovides httpd	#see what package is providing the html server
    rpm -qf file			#see what package a file belongs to
    rpm -e rhythmbox		#uninstall rhythmbox
    rpm -i file.rpm			#install file.rpm regardless of other installed versions (-U is prefered)
    rpm -Uvh file.rpm		#install file.rpm, replacing older versions, displaying hashes and verbosity
    rpm -Va --nofiles		#check your system for missing dependencies
    I'm hoping that I can get some support behind this and actually see it implemented. What does everyone think?
    Last edited by Craig Pemberton; 9th August 2006 at 07:35 PM.

  2. #2
    ccrvic Guest
    Quote Originally Posted by Craig Pemberton
    When I first started learning about Linux, the output of rpm was the most demoralizing thing EVER.
    So use man rpm instead.

    Quote Originally Posted by Craig Pemberton
    I was thinking something along these lines might be more eliucidating:
    ...And significantly less useful to those of us who want a synopsis without an explanation.

    The man and info pages are the place for verbosity. CLI help options are deliberately succinct, and should remain that way.

    Vic.

  3. #3
    danielHL Guest
    The first tool a newbie should use for installing/removing software is yum (at least on fedora systems). The above output of the command is equivalent to most linux command line tools. It lists the basic parameters. This is not intended to get everybody used to using rpm but for fixing typos, looking for mandatory parameters etc. If you want detailed information about a command, man is your friend.

    CU
    Daniel

  4. #4
    Craig Pemberton Guest
    "rpm --usage" provides such a synopsis
    "info rpm" provides the exact same thing on my installation
    "man rpm" this so comprehensive that it could be overwhelming

    Many new users will need to use rpm and they will be stopped dead by that output. Errors in invocation and simply "rpm" could provide better information because this is what most users will encounter before they ever learn enough about info or man to use them properly.

  5. #5
    Craig Pemberton Guest
    And about yum, yes yum should be used. Unfortunately many times people are refered to use 'rpm' while reading instructions online. Also, there are some facets of package management that are better to use rpm for.

  6. #6
    Join Date
    May 2005
    Posts
    3,868
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by Craig Pemberton
    And about yum, yes yum should be used. Unfortunately many times people are refered to use 'rpm' while reading instructions online. Also, there are some facets of package management that are better to use rpm for.
    People who use or recommend RPM as a tool for end user package management is more often than completely mistaken. Yum or graphical tools that are built on top of it like Pirut and Pup are basically the only things that end users usually need to directly use.

    RPM command line output is intimidating because it is a lower level library and less of a tool.
    Rahul
    http://fedoraproject.org/wiki/RahulSundaram

  7. #7
    Craig Pemberton Guest
    Sorry if this came off as hostile, as it seems to have stirred up some bad-vibes. That wasn't my intention. Sorry.

    I agree, it is true that the complexity of rpm should be hidden from users behind other front ends, and this is done more so in recent days. This also seems somewhat like sweeping dirt under a rug. Why shouldn't the complexity be made more transparent and managable at every level?

    People who use or recommend RPM as a tool for end user package management is more often than completely mistaken.
    Unfortunately, most fedora install guides use rpm -Uvh instead of yum localinstall. For example, the stanton finely guide and almost every site it links to use rpm where they could have used yum. Although this works, people use the guides to learn from as well, and it teaches them up to use an inappropriate and inaccessible tool.

  8. #8
    Join Date
    May 2004
    Posts
    503
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    And sometimes yum simply doesn't work and one must use rpm directly.
    I agree that cleaning up the "help" from the rpm command
    is a good idea. Also, making the an page more readable would be
    nice. I'm not talking about sweeping changes, just some re-wording
    to help out those with less Linux experience.
    Registered Linux User # 373325

  9. #9
    Join Date
    Nov 2004
    Posts
    1,105
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Examples:
    rpm -q sendmail #see if sendmail is installed, and print version info
    rpm -qic bash #give info for and list all configuration files
    rpm -qa | grep font #locate all installed packages with font in the name
    rpm -q --whatprovides httpd #see what package is providing the html server
    rpm -qf file #see what package a file belongs to
    rpm -e rhythmbox #uninstall rhythmbox
    rpm -i file.rpm #install file.rpm regardless of other installed versions (-U is prefered)
    rpm -Uvh file.rpm #install file.rpm, replacing older versions, displaying hashes and verbosity
    rpm -Va --nofiles #check your system for missing dependencies
    One thing many man pages lack I think is examples. They tell you all the options but many times option explanations alone don't make sense to me without an example or two. A couple of examples for each option like above would go a long way.
    IMHO GNOME FTW! BTW KDE WAD? FWIW. HTH. AFAIK YMMV. OMG WTF BBQ! :rolleyes:

    Do you like surfing forums but wish people would stop using obscure abbreviations and acronyms?
    Then my Firefox/Chrome extension ABBREX is for you!
    It automatically adds hover tooltips to abbreviations displaying their meanings on any web page you visit!

    Check it out at: http://abbrex.com

  10. #10
    Join Date
    Mar 2004
    Location
    San Antonio, Tx
    Age
    68
    Posts
    4,161
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I agree, I would also like examples...sometimes the documentation is just not that clear.
    **********************************************
    sailor
    West of San Antonio, Tx ... near Castroville, Tx

    LinuxMint - Debian 12.4
    **********************************************

  11. #11
    Join Date
    May 2005
    Posts
    3,868
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by BandC
    One thing many man pages lack I think is examples. They tell you all the options but many times option explanations alone don't make sense to me without an example or two. A couple of examples for each option like above would go a long way.
    Ok. Write up the content and file a request in http://bugzilla.redhat.com or send it Fedora Documentation project. Make it happen rather than just wishing it to be true.
    Rahul
    http://fedoraproject.org/wiki/RahulSundaram

  12. #12
    Join Date
    May 2005
    Posts
    3,868
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by Craig Pemberton
    Sorry if this came off as hostile, as it seems to have stirred up some bad-vibes. That wasn't my intention. Sorry.

    I agree, it is true that the complexity of rpm should be hidden from users behind other front ends, and this is done more so in recent days. This also seems somewhat like sweeping dirt under a rug. Why shouldn't the complexity be made more transparent and managable at every level?


    Unfortunately, most fedora install guides use rpm -Uvh instead of yum localinstall. For example, the stanton finely guide and almost every site it links to use rpm where they could have used yum. Although this works, people use the guides to learn from as well, and it teaches them up to use an inappropriate and inaccessible tool.
    Complexity cannot be hidden from RPM because the utility has hundreds of options. What we do instead is abstract and make it easier to do the stuff that users usually want to do in higher level tools. If you find wrong documentation, write to the authors. Write better guides and so on.
    Rahul
    http://fedoraproject.org/wiki/RahulSundaram

  13. #13
    Craig Pemberton Guest
    I filed a report with redhat buzilla. It's worth a shot.

    https://bugzilla.redhat.com/bugzilla....cgi?id=202061

  14. #14
    Join Date
    Nov 2004
    Location
    MT USA
    Posts
    1,982
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)
    Sounds like a good idea to me. Some of the command line utilities are 'intimidating' even after reading the man documents .

    And sometimes yum simply doesn't work and one must use rpm directly.
    I am one of them... While yum works, it is a very slow tool to use on a 56K connection. Even on connection at work it takes a bit but is 'tolerable' there. I normally check the 'updates' section once a day to see what has been added, and if I feel I need the updates I download the RPM packages to a thumb drive at work and then bring home and load.... Very rare I use the 'yum' for updates at home.... toooooo slooooow.

  15. #15
    Join Date
    Dec 2005
    Posts
    527
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by Craig Pemberton
    When I first started learning about Linux, the output of rpm was the most demoralizing thing ever.



    Seeing as rpm is a very basic tool that most new users need to use very early on in their Linux experiences, I feel that this could be more informative. I can hardly read the alphabet soup, let alone make any use of it.

    The above is the same as "rpm --usage" so for some crazy people who really want it can still have access to it if it changes.

    I was thinking something along these lines might be more eliucidating:

    Code:
    The RPM Package Manager (RPM) is a powerful command line driven
    package management system capable of installing, uninstalling,
    verifying, querying, and updating software packages. 
    
    Query mode options (after -q)
      -i print package information
      -c            		   list all configuration files
      -d		                   list all documentation files
      -l                               list files in package
      -a                               list all packages
      -f                               list package(s) owning file
      --whatrequires                   list the package(s) which require a dependency
      --whatprovides                   list the package(s) which provide a dependency
    
    Install/Upgrade/Erase mode options (after -i or -U or -e)
      -h                               print hash marks as package installs (good with -v)
    
    Verify options (after -V):
      --nofiles                        don't verify files in package
      -a                               query/verify all packages
      -f                               query/verify package(s) owning file
    
    Common options for all rpm modes:
      --quiet                          provide less detailed output
      --verbose, -v                    provide more detailed output
      --version                        print the version of rpm being used
    
    Help options:
      --help, -?                       Show a more complete help message
      --usage                          Display a concise usage message
    
    Examples:
    rpm -q sendmail			#see if sendmail is installed, and print version info
    rpm -qic bash			#give info for  and list all configuration files
    rpm -qa | grep font		#locate all installed packages with font in the name
    rpm -q --whatprovides httpd	#see what package is providing the html server
    rpm -qf file			#see what package a file belongs to
    rpm -e rhythmbox		#uninstall rhythmbox
    rpm -i file.rpm			#install file.rpm regardless of other installed versions (-U is prefered)
    rpm -Uvh file.rpm		#install file.rpm, replacing older versions, displaying hashes and verbosity
    rpm -Va --nofiles		#check your system for missing dependencies
    I'm hoping that I can get some support behind this and actually see it implemented. What does everyone think?

    This is a Fantastic idea! If they were newbies there is a good chance they won't know about man rpm. Reguardless of the experiance, having a clearer and more user friendly output benifits all of us. I see very little benifit from the old output. Excellant rewrite Craig!

Page 1 of 2 12 LastLast

Similar Threads

  1. Making money with Linux part time.
    By ltam in forum Wibble
    Replies: 47
    Last Post: 3rd July 2006, 03:18 PM
  2. The problem with Linux part 2
    By JN4OldSchool in forum Linux Chat
    Replies: 68
    Last Post: 12th December 2005, 09:23 PM
  3. Opening up part of Linux HD to XP.....
    By Twell in forum Hardware
    Replies: 4
    Last Post: 9th June 2005, 03:16 AM

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •