# Sample configuration file for kdesrc-build. # # To use this sample configuration file, copy it to ~/.kdesrc-buildrc, and then # edit it to suit your desires. # # Also see the included kdesrc-build-setup script, which will ask some # questions and then generate a config. You can still refer to this file for # additions. # Global settings go in this section. They apply to every module unless # overridden later. global # This is the directory that your KDE sources are downloaded to. This # directory also holds the build and log directories by default. # source-dir ~/kdesrc # This is the directory that KDE will end up installed at. The default is # appropriate for a single-user installation of KDE, which requires no root # permissions. If you'd like, you can install and use the sudo program to # install KDE anywhere on your system, in conjunction with the # make-install-prefix option. # kdedir ~/kde # # This is the Qt installation to use for building/using KDE. The default is # to build Qt (see the qt module below). If you wish to use your system's # installed Qt (assuming it is recent enough!) then you can leave this unset. # qtdir ~/qt4 # Default to installing Qt # By default, each source code module is checked out from its latest # development version ('master' for git, 'trunk' for subversion). # If instead you want to check out another branch, like 4.7, use # branch KDE/4.7 # Note that some modules have their own special branch names that don't # necessarily have the same meaning for other modules. # # Because of this, a better option might be to use the "branch-group" option, # which automatically selects the right branch for supported modules (ones # which use the kde-projects repository). # # kdesrc-build now must implicitly select a branch-group for KDE modules if # you don't pick one... so it's better for you to pick one to make sure you # get what you want! # # There are three branch groups, # - stable-qt4 (the last KDE 4 release, plus bugfixes), # - latest-qt4 (the upcoming KDE 4 release), and # - kf5-qt5 (the Qt5-based KDE Frameworks 5 under development). branch-group latest-qt4 # This is the Subversion server to download the rest of the KDE sources from. # Developers should uncomment this line, non-developers can leave it alone to use # the anonymous mirrors. # svn-server svn+ssh://svn@svn.kde.org/home/kde # cmake-options controls the compilation options for building KDE 4 modules. # These options apply to all KDE modules unless otherwise specified. # # Also see https://techbase.kde.org/Development/Tutorials/CMake#Command_Line_Variables # cmake-options -DKDE4_BUILD_TESTS:BOOL=ON cmake-options -DCMAKE_BUILD_TYPE=RelWithDebInfo # These are the default options passed to the make command. The default tries # to build with 2 parallel compiles. If you are using distcc or have SMP, you # should experiment with setting this value higher for best performance. # make-options -j2 # KDE has one of the most extensive translation packages in the world. They # are stored in the l10n module. kdesrc-build can automatically try to build # and install languages for you, using this parameter. It should be a list # of languages to build and install. This option requires the language code # as present in l10n. You can look these codes up at # http://l10n.kde.org/teams-list.php # kde-languages de # German # kde-languages fr # French # kde-languages en_GB cs # British English and Czech # If you would like install KDE to the system (DO NOT INSTALL *over* a prior # installation!), then you'll probably need to use sudo to install everything. # # The -S parameter causes sudo to read from standard input (which is redirected # by kdesrc-build). This means that if sudo has to ask for your password, it # will fail, you need to configure sudo to be able to run "make install" # without requesting a password. # # In addition, you can run kdesrc-build --no-install, and then # sudo kdesrc-build --install if you are unable to configure sudo to allow # make install with no password. # make-install-prefix sudo -S # purge-old-logs controls whether old log files should be removed after the # latest build finishes. Set to false to disable it. # purge-old-logs false # # For the full list of options please see # https://docs.kde.org/trunk5/en/extragear-utils/kdesrc-build/conf-options-table.html end global # With the global options set, the remainder of the file selects which modules # to build, the options to set for each module, and the order to build them in. # qt is the default name of the module used to build the Qt toolkit, which is # required for KDE. It is sometimes required to use the latest Qt available # to build KDE. 2 versions are supported by kdesrc-build: # 1. Qt Projects's Qt with no modifications. # 2. A KDE copy with no modifications (but on a better git server). # # The Qt buildsystem is different from that used by KDE modules, and so # settings from the global section will not apply to Qt. module qt # Configure flags. See README.kde-qt for the official recommended ones, which # may become inconsistent with these sample flags. # Do not specify -prefix, kdesrc-build will handle that. # # Phonon note: # - If you compile phonon separately, make sure to pass -no-phonon. # - Alternatively, if you use Qt's phonon, remove "phonon" from the use-modules # option in the module-set below. # - As of KDE 4.6/Qt 4.7 the "right answer" is the first option: separate phonon. configure-flags -fast -debug \ -system-zlib -system-libpng -system-libjpeg \ -dbus -webkit -plugin-sql-mysql \ -nomake examples -nomake demos \ -no-phonon # See module-set below # make-options -j2 # The kde: prefix here will be expanded by kdesrc-build to the correct URL repository kde:qt # If you use the branch option up in the "global" section to set a # default KDE version, you should manually choose a branch here for Qt. # You can see the available branches by looking first on gitorious.org, # or by using "git branch -r" from the qt source directory. # # Note that Nokia's own Qt repository does not recommend using the master # branch anymore. The Qt repository may be splitting in the future as well. branch 4.8 end module # shared-desktop-ontologies is part of Nepomuk, and is basically a small set # of data files expressing how different concepts relate to each other. It is # required for Soprano, kdelibs (if Nepomuk is enabled), and kdepim-runtime. # Often the distribution provides this package, but if not you can uncomment # this module. module shared-desktop-ontologies repository git://git.code.sf.net/p/oscaf/shared-desktop-ontologies branch master end module # Next is shown a "module-set", which is a grouping of modules that has special # handling of the "repository" option (the module name is automatically added # to the end for every module defined in this set), and accepts the special # use-modules option to determine what modules are included in the group. # Any other options included as defined for every module in the set. # For every single module passed, kdesrc-build will create the appropriate # "module" option, with the right repository setting (base + module name). # # If you need to set more options for only individual modules, you can add a # module ... end module as normal after the module-set, but keep in mind # if you do this that you won't change the order the modules are built in. # # Example: module-set # Special handling occurs with this option when used in module-set so you # don't have to re-type repository names. repository kde-projects # automoc is essential for building KDE's CMake-based modules, and so should be first # in this module set (but after Qt, if you're building that too) use-modules automoc cagibi attica polkit-qt-1 # Other options are simply passed to each defined module. For example if # you uncomment the next line, then the "Debug" build type will be used for # every module in this set, which makes modules optimized but still # debuggable. # cmake-options -DCMAKE_BUILD_TYPE=Debug end module-set # "options" requires kdesrc-build on or after 11-Jan-2014. options attica cmake-options -DQT4_BUILD=TRUE # Required if both Qt4 and 5 are present. end options # Phonon is the KDE multimedia layer. # It is required for the KDE libraries, and a specific backend for your system # is also required. For Linux users, this means either phonon-gstreamer or # phonon-vlc module-set phonon repository kde-projects # We avoid using just "phonon" as kdesrc-build will include all submodules # that have phonon as part of their path. (i.e. it means phonon/*), but we # don't want all the phonon backends. use-modules phonon/phonon phonon-gstreamer # or you can try phonon-vlc end module-set # This set includes the modules required for the "strigi" file analyzer, used # to extract information contained in various file types for Dolphin previews, # Nepomuk tagging, etc. module-set strigi repository kde-projects # Not all modules in strigi are built, and there is a certain order required. # See kde-build-metadata.git/{dependency-data,build-script-ignore}, which # are used automatically by kdesrc-build. use-modules kdesupport/strigi end module-set # kdesupport contains QCA, oxygen icons, and a few other small things. module kdesupport end module # Support for notification area menus via the DBusMenu protocol # This is needed by kdelibs. # # This is commented out as this is the only module that requires the 'bzr' # source control software, and a recent libdbusmenu-qt development package from # your distribution should meet the kdelibs dependency. If you wish to install # this module, ensure you have the 'bzr' tool available and then uncomment this # module. #module libdbusmenu-qt # The lp: prefix refers to Canonical's Launchpad repository # repository bzr://lp:libdbusmenu-qt #end module # TagLib used to be in kdesupport and is used by JuK and Amarok for parsing # audio metadata. It is required for JuK, amarok (though typically the # system-provided taglib will suffice). module taglib repository git://github.com/taglib/taglib.git # Note: -DWITH_ASF=TRUE and -DWITH_MP4=TRUE (for taglib) is required to # allow Amarok (defined below, near the end of this file) to build. cmake-options -DWITH_ASF=TRUE -DWITH_MP4=TRUE end module module-set repository kde-projects use-modules extra-cmake-modules end module-set # kdelibs and the sub-libraries in its group are the base KDE libraries needed # by all KDE 4 applications. # kde-runtime contains applications that are required for the operation of # some base KDE libraries. module-set repository kde-projects # Note that 'kdelibs' is itself a module and a group pulling in things like # kactivities and baloo-widgets. Rather than specifying all the modules I # just let kdesrc-build figure it out, at least while they're still # changing. use-modules kdelibs kde-runtime # These are pulled in by kdelibs and are still required by some extragear modules, but # are optional or no longer required for kde.org modules. Remove this line if you need to # build Nepomuk, but if you need to build nepomuk you'd also want to add "soprano" to # use-modules above. ignore-modules nepomuk-core nepomuk-widgets # KDE 4 uses CMake, if you need to pass options to the cmake command, use this # option: # cmake-options -DKDE4_BUILD_TESTS:BOOL=ON end module-set # The next module-set completes a base workspace. kdepimlibs should be compiled # before the workspace and Plasma addons are compiled, and kdepimlibs itself # requires akonadi. # From there kde-workspace contains programs like Plasma Desktop and the KWin # window manager, kde-baseapps contains core applications, # and I also add konsole and kate since they are also very useful in general. module-set repository kde-projects use-modules akonadi kdepimlibs kde-workspace \ kate kde-baseapps konsole end module-set # On OpenSUSE, for unlocking to work, you need to do this: #module kde-workspace #cmake-options -DKDE4_COMMON_PAM_SERVICE=xdm #end module # KDE/kde-wallpapers contains all wallpapers for your desktop module kde-wallpapers end module # KDE/kde-base-artwork contains the default splash screen module kde-base-artwork end module # kdemultimedia contains JuK, Dragon Player and other KDE multimedia # applications. It does not include amarok, which is in git.kde.org module-set repository kde-projects use-modules kdemultimedia # Example of how to ignore a module. kdemultimedia includes thumbnail # generators for video files based on either mplayer or ffmpeg. You'd usually # only want one. You can use ignore-modules to ignore the one you don't want # (though you can build them both if desired). ignore-modules ffmpegthumbs # ignore-modules mplayerthumbs end module-set # ... Well, they're games. ;) module-set repository kde-projects use-modules kdegames end module-set # kdesdk is a useful module for software developers. Programmers *need* this # module for kcachegrind, but in addition there are several useful # documentation kioslave formatters for use in konqueror. module-set repository kde-projects use-modules kdesdk end module-set # kdenetwork has Kopete and other useful applications for the Internet and # other networks. module-set repository kde-projects use-modules kdenetwork end module # kdepim contains KMail, Kontact, KOrganizer, and other insanely useful # programs that help you keep track of things. It consists of two core # components, kdepim-runtime, and kdepim itself, which both depend on # kdepimlibs. module-set repository kde-projects use-modules kdepim-runtime kdepim end module-set # kdeaccessibility accessibility tools #module-set # repository kde-projects # use-modules kdeaccessibility #end module-set # kdeartwork has themes and screensaver #module kdeartwork #end module # kdeutils has miscellaneous programs which can be useful. You probably won't # die if you remove this from the config file though. module-set kdeutils repository kde-projects use-modules kdeutils end module-set # kdegraphics contains various programs useful for graphics editing. It # doesn't include Krita, which is part of Calligra, but it is worth it just for # KolourPaint and Gwenview. # # Note that this just references the KDE Projects database, so this will expand # into many more modules. module-set repository kde-projects use-modules kdegraphics end module-set # Educational programs. Some are actually quite fun even if you're not trying # to learn anything. module-set kdeedu repository kde-projects use-modules kdeedu end module-set # Extra collection of useful plasma applets, runners, data engines, etc. module-set repository kde-projects use-modules kdeplasma-addons end module-set ## A prerequisite for kdevelop other modules using the kdevelop platform, like # kdewebdev #module-set # use-modules kdevplatform # repository kde-projects #end module-set ## The KDevelop IDE, useful for developing all kinds of programs. If you don't # plan on being a software developer you can save time by removing this from # your configuration. #module-set # use-modules kdevelop # repository kde-projects #end module-set # Modules in extragear and playground can also be added. # # To see what you can find in the various modules, browse # https://projects.kde.org/projects/kde/extragear or # https://projects.kde.org/projects/kde/playground # Amarok is a KDE multimedia application extraordinaire. # If you want to build and install amarok, simply uncomment this module # NOTE: Ensure you've enabled ASF and MP4 support above in taglib. (If you # build the taglib module by itself instead of using your distro's taglib, # then make sure you've enabled this support for taglib). #module-set amarok # repository kde-projects # # use-modules amarok #end module # --- The K3B cd/dvd/etc. burner. #module-set # repository kde-projects # # use-modules k3b #end module-set # Calligra Office Suite #module-set # repository kde-projects # # use-modules calligra #end module-set # Add more modules as needed.