diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,21 @@
 # Aura Changelog
 
+## 3.2.3 (2021-02-26)
+
+Thanks to Cihan Alkan, Ratijas, and Evan Cameron for contributing to this release.
+
+#### Added
+
+- `-Cv` to clear the VCS cache (usually `/var/cache/aura/vcs/`). [#693]
+- Turkish translations thanks to Cihan Alkan. Teşekkür ederim!
+
+#### Changed
+
+- Man pages enhanced and reformatted. [#672]
+
+[#693]: https://github.com/fosskers/aura/pull/693
+[#672]: https://github.com/fosskers/aura/pull/672
+
 ## 3.2.2 (2020-10-29)
 
 #### Fixed
diff --git a/aura.cabal b/aura.cabal
--- a/aura.cabal
+++ b/aura.cabal
@@ -1,6 +1,6 @@
 cabal-version:      2.2
 name:               aura
-version:            3.2.2
+version:            3.2.3
 synopsis:           A secure package manager for Arch Linux and the AUR.
 description:
   Aura is a package manager for Arch Linux. It connects to both the
@@ -55,7 +55,7 @@
     , http-client                  >=0.5 && <0.8
     , prettyprinter                >=1.2 && <1.8
     , prettyprinter-ansi-terminal  ^>=1.1
-    , scheduler                    >=1.1 && <1.5
+    , scheduler                    >=1.1 && <1.6
     , transformers                 ^>=0.5
     , typed-process                ^>=0.2
 
@@ -126,5 +126,5 @@
   ghc-options:    -threaded -with-rtsopts=-N
   build-depends:
     , aura
-    , tasty        >=0.11 && <1.4
+    , tasty        >=0.11 && <1.5
     , tasty-hunit  >=0.9  && <0.11
diff --git a/doc/aura.8 b/doc/aura.8
--- a/doc/aura.8
+++ b/doc/aura.8
@@ -1,493 +1,721 @@
-.\" Man page for `aura`
-.\" Written by Colin Woodbury <colin@fosskers.ca>
-
-.TH aura 8 "2020 June" "Aura" "Aura Manual"
-
-.\" Disable hyphenation.
-.nh
-
-.SH NAME
-aura \- A package manager for Arch Linux and the AUR.
-
-.SH SYNOPSIS
-\fIaura\fR <operation> [options] [package(s)]
-
-.SH DESCRIPTION
-.P
-\fIaura\fR is a secure, multilingual package manager for Arch Linux written in
-Haskell. It connects to both the official Arch repositories and to the Arch User
-Repositories (AUR), allowing easy control of all packages on an Arch system.
-Aura allows \fIall\fR pacman operations and provides \fInew\fR custom ones for
-dealing with AUR packages.
-
-.SH OPERATIONS
-.P
-\fB\-A\fR, \-\-aursync [package(s)]
-.RS 4
-Perform actions involving the [A]UR. Default action installs packages from the
-AUR. During building, makepkg output is \fInot\fR shown by default. After
-building, the built \fI.pkg.tar.xz\fR file is moved to the package cache and
-installed from there. This allows for easy AUR package downgrading.
-.RE
-.P
-\fB\-B\fR, \-\-save
-.RS 4
-Manage the saving and restoring of the global package state. Default action
-stores a record of all currently installed packages and their versions.
-.RE
-.P
-\fB\-C\fR, \-\-downgrade [package(s)]
-.RS 4
-Perform actions involving the package [C]ache. Default action downgrades
-specified packages. This process is interactive, allowing the user to choose
-from any previous version they have available in the package cache.
-.RE
-.P
-\fB\-L\fR, \-\-viewlog
-.RS 4
-Perform actions involving the pacman [L]ogfile.
-Default action opens the log for read-only viewing.
-.RE
-.P
-\fB\-O\fR, \-\-orphans [package(s)]
-.RS 4
-Perform actions involving [O]rphan packages. Orphan packages are packages
-installed as dependencies, but are no longer required by any other package.
-Default action is to list the current orphans.
-.RE
-.P
-\fB\-P\fR, \-\-analysis <stdin>
-.RS 4
-Perform security analysis of a [P]KGBUILD. Useful for package maintainers and
-sysadmins to verify the safety of the PKGBUILD files that they write. To test
-any package on the AUR, try the following:
-.P
-.RS 4
-aura -Ap <package> | aura -P
-.RE
-
-.SH AUR SYNC OPTIONS (\fI\-A\fR)
-.P
-\fB\-a\fR, \-\-delmakedeps
-.RS 4
-Uninstalls build dependencies that are no longer required after installing the
-main package. This prevents the creation of orphan packages. Also note that
-while the package itself will be uninstalled, its package file will remain in
-the cache.
-.RE
-.P
-\fB\-c\fR, \-\-clean
-.RS 4
-After a package's tarball has been built and copied to the package cache, delete
-its build directory immediately.
-.RE
-.P
-\fB\-d\fR, \-\-deps <package(s)>
-.RS 4
-View all the dependencies of a package. This process is recursive for AUR
-packages, so all dependencies of dependencies (and so on) will also be shown.
-This can aid the pre-install package research process.
-.RE
-.P
-\fB\-i\fR, \-\-info <package(s)>
-.RS 4
-View information about a package in the AUR.
-.RE
-.P
-\fB\-k\fR, \-\-diff
-.RS 4
-Shows PKGBUILD diffs. When upgrading, using this option will compare the most
-and second-most recent PKGBUILDs and output changes in colour.
-.RE
-.P
-\fB\-p\fR, \-\-pkgbuild <package(s)>
-.RS 4
-Outputs an AUR package's PKGBUILD. Use this before installing new packages to
-confirm that the build scripts aren't doing anything fishy.
-.RE
-.P
-\fB\-q\fR, \-\-quiet
-.RS 4
-Display less information about certain aursync operations (this is useful when
-processing Aura's output in a script). In particular, search and view
-dependencies will only show uncoloured package names.
-.RE
-.P
-\fB\-s\fR, \-\-search <word>
-.RS 4
-Search the AUR via a word only (no regex). Results are sorted by vote.
-Suboptions:
-.RS 4
-\fI\-\-abc\fR      : Sorts results alphabetically.
-.P
-\fI\-\-head\=n\fR   : Only show the first n results. Default n = 10
-.P
-\fI\-\-tail\=n\fR   : Only show the last n results.  Default n = 10
-.P
-\fI\-r\fR, \fI\-\-both\fR : Show results from the official repos as well.
-.RE
-.RE
-.P
-\fB\-u\fR, \-\-sysupgrade
-.RS 4
-Upgrade all installed AUR packages. \fI\-Au\fR is \fI\-Su\fR for AUR packages.
-.RE
-.P
-\fB\-w\fR, \-\-downloadonly <package(s)>
-.RS 4
-Download a package tarball.
-.RE
-.P
-\fB\-x\fR, \-\-unsuppress
-.RS 4
-Unsuppress \fImakepkg\fR output during building. By default this output is
-suppressed for a more silent install. Note that when this option isn't used,
-\fImakepkg\fR output is actually collected and printed if any errors occur.
-.RE
-.P
-\fB\-\-json <package(s)>
-.RS 4
-Query the AUR RPC for package info as raw JSON. Good for debugging.
-.RE
-.P
-\fB\-\-build\fR <path>
-.RS 4
-Specify build path when building AUR packages. Only the \fIfull\fR path of a
-pre-existing directory can be used. Example:
-.P
-.RS 4
-aura -A foo --build=/full/path/to/build/location/
-.RE
-.RE
-.P
-\fB\-\-builduser\fR <username>
-.RS 4
-Specify the user to build packages as. This can be useful when logged in as
-root and a build user is available.
-.RE
-.P
-\fB\-\-devel\fR
-.RS 4
-When ran with \fI\-Au\fR, adds all development packages to the queue of
-packages to upgrade. Devel packages are those pulled directly from online
-repositories, via git / mercurial / etc.
-.RE
-.P
-\fB\-\-dryrun\fR
-.RS 4
-When ran with \fI\-A\fR or \fI\-Au\fR, update checks, PKGBUILD diffs, and
-dependency checks will be performed, but nothing will be built. Also usable
-with \fI\-M\fR.
-.RE
-.P
-\fB\-\-force\fR
-.RS 4
-Always (re)build the specified packages. Usually Aura will not rebuild packages
-whose versions are already available in the local package cache.
-.RE
-.P
-\fB\-\-hotedit\fR
-.RS 4
-Prompt the user before building to ask if they wish to view/edit the PKGBUILD,
-as well as any .install or .patch files. However, research into packages (and by
-extension, their PKGBUILDs) should be done by the user before any building
-occurs. Please use \fI\-Ap\fR and \fI\-Ad\fR for this, as they will be much
-faster at presenting information than searching the AUR website manually. Note
-that, since aura is run through sudo, your local value of $EDITOR may not be
-preserved. Run as "sudo \fI\-E\fR aura -A --hotedit ..." to preserve your
-environment. To always allow environment variables to be passed, have a look at
-the \fIenv_reset\fR and \fIenv_keep\fR options in \fBsudoers\fR(5).
-.RE
-.P
-\fB\-\-skipdepcheck\fR
-.RS 4
-Perform no dependency solving. Consider this when using \fI\-\-hotedit\fR to
-avoid building annoying dependencies that aren't necessary for your special
-use-case.
-.RE
-.P
-\fB\-\-vcspath <path>\fR
-.RS 4
-Save the cloned sources of VCS packages (i.e. those that end in \fI*-git\fR, etc.)
-in the given location, instead of the default \fI/var/cache/aura/vcs/\fR.
-.RE
-
-.SH GLOBAL PACKAGE STATE OPTIONS (\fI\-B\fR)
-.P
-\fB\-c\fR, \-\-clean <states-to-retain>
-.RS 4
-Saves a given number of the most recently saved package states and removes the
-rest.
-.RE
-.P
-\fB\-r\fR, \-\-restore\fR
-.RS 4
-Restores a record kept with \fI\-B\fR. Attempts to downgrade any packages that
-were upgraded since the chosen save. Will remove any that weren't installed at
-the time.
-.RE
-.P
-\fB\-l\fR, \-\-list\fR
-.RS 4
-Show all saved package state filenames.
-.RE
-
-.SH DOWNGRADE OPTIONS (\fI\-C\fR)
-.P
-\fB\-b\fR, \-\-backup\fR <path>
-.RS 4
-Backup the package cache to a given directory. The given directory must already
-exist. During copying, progress will be shown. If the copy takes too long, you
-may want to reduce the number of older versions of each package by using
-\fI\-Cc\fR.
-.RE
-.P
-\fB\-c\fR, \-\-clean <versions-to-retain>
-.RS 4
-Saves a given number of package versions for each package and deletes the rest
-from the package cache. Count is made from the most recent version, so using:
-.RS 4
-aura -Cc 3
-.RE
-would save the three most recent versions of each package file.
-Giving the number 0 as an argument is identical to \fI\-Scc\fR.
-.RE
-.P
-\fB\-\-notsaved
-.RS 4
-Remove only those package files which are not saved in a package record (a la \fI\-B\fR).
-.RE
-.P
-\fB\-s\fR, \-\-search <regex>
-.RS 4
-Search the package cache via a regex. Any package name that matches the regex
-will be output as\-is.
-.RE
-
-.SH LOGFILE OPTIONS (\fI\-L\fR)
-.P
-\fB\-i\fR, \-\-info <package(s)>
-.RS 4
-Displays install / upgrade history for a given package. Under the `Recent
-Actions` section, only the last five entries will be displayed. If there are
-less than five actions ever performed with the package, what is available will
-be printed.
-.RE
-.P
-\fB\-s\fR, \-\-search <regex>
-.RS 4
-Search the pacman log file via a regex. Useful for singling out any and all
-actions performed on a package.
-.RE
-
-.SH ORPHAN PACKAGE OPTIONS (\fI\-O\fR)
-.P
-\fB\-a\fR, \-\-adopt <package(s)>
-.RS 4
-Mark a package as being explicitly installed (i.e. it's not a dependency).
-.RE
-.P
-\fB\-j\fR, \-\-abandon
-.RS 4
-Uninstall all orphan packages.
-.RE
-.SH ANALYSIS OPTIONS (\fI\-P\fR)
-.P
-\fB\-f\fR, \-\-file <path>
-.RS 4
-Analyse a given PKGBUILD.
-.RE
-\fB\-d\fR, \-\-dir <path>
-.RS 4
-Analyse a PKGBUILD found in the specified directory.
-.RE
-.P
-\fB\-a\fR, \-\-audit
-.RS 4
-Analyse the PKGBUILDs of all locally installed AUR packages.
-.RE
-
-.SH PACMAN / AURA DUAL FUNCTIONALITY OPTIONS
-.P
-\-\-noconfirm
-.RS 4
-Never ask for any Aura or Pacman confirmation. Any time a prompt would
-appear, say before building or installation, it is assumed the user
-answered in whatever way would progress the program.
-.RE
-.P
-\-\-needed
-.RS 4
-Don't rebuild/reinstall packages that are already up to date.
-.RE
-.P
-\-\-debug
-.RS 4
-View some handy debugging information.
-.RE
-.P
-\-\-color [mode]
-.RS 4
-Whether or not to colour output text. Without this flag, both Aura and Pacman
-will attempt to colour text if the terminal allows it. Otherwise, you can pass
-\fInever\fR or \fIalways\fR to be specific about your wants.
-.RE
-.P
-\-\-overwrite <glob>
-.RS 4
-If there are file conflicts during installation, overwrite conflicting files
-that match the given glob pattern.
-.RE
-
-.SH EXPOSED MAKEPKG OPTIONS
-.P
-\-\-ignorearch
-.RS 4
-Ignores processor architecture when building packages.
-.RE
-.P
-\-\-allsource
-.RS 4
-Creates a \fI.src\fR file containing all the downloaded sources (code, etc) and
-stores it at \fI/var/cache/aura/src/\fR. To change the location where sources
-are stored, use the \fI\-\-allsourcepath\fR flag.
-.RE
-.P
-\-\-skipinteg
-.RS 4
-Skip package source integrity checks.
-.RE
-.P
-\-\-skippgpcheck
-.RS 4
-Skip all PGP checks.
-.RE
-
-.SH LANGUAGE OPTIONS
-.P
-Aura is available in multiple languages. As options, they can be used with
-either their English names or their real names written in their native
-characters. The available languages are, in option form:
-.P
-\-\-english (default)
-.P
-\-\-japanese, \-\-日本語
-.P
-\-\-polish, \-\-polski
-.P
-\-\-croatian, \-\-hrvatski
-.P
-\-\-swedish, \-\-svenska
-.P
-\-\-german, \-\-deutsch
-.P
-\-\-spanish, \-\-español
-.P
-\-\-portuguese, \-\-português
-.P
-\-\-french, \-\-français
-.P
-\-\-russian, \-\-русский
-.P
-\-\-italian, \-\-italiano
-.P
-\-\-serbian, \-\-српски
-.P
-\-\-norwegian, \-\-norsk
-.P
-\-\-indonesian
-.P
-\-\-chinese, \-\-中文
-.P
-\-\-esperanto
-.P
-\-\-dutch, \-\-nederlands
-
-.SH PRO TIPS
-.P
-1. If you build a package and then choose not to install it, the built package
-file will still be moved to the cache. You can then install it whenever you
-want with \fI\-C\fR.
-.P
-2. Research packages using \fI\-Ad\fR, \fI\-Ai\fR, and \fI\-Ap\fR!
-.P
-3. When upgrading, use \fI\-Akua\fR instead of just \fI\-Au\fR.  This will
-remove make deps, as well as show PKGBUILD diffs before building.
-.P
-4. If you want to search both the Repos and the AUR at the same time, you can
-use the following shell functions:
-.RS 4
-Bash => function search() {
-          aura -Ss $1 && aura -As $1
-        }
-
-Fish => function search
-          aura -Ss $argv
-          aura -As $argv
-        end
-.RE
-
-.SH SEE ALSO
-.P
-\fBaura.conf(5)\fR, \fBpacman\fR(8), \fBpacman.conf\fR(5), \fBmakepkg\fR(8)
-
-.SH BUGS
-.P
-It is not recommended to install non-AUR packages with pacman or aura. Aura will
-assume they are AUR packages during a \fI\-Au\fR and attempt to upgrade them. If
-a name collision occurs (that is, if there is a legitimate AUR package with the
-same name as the one you installed) previous installations could be overwritten.
-
-.SH AUTHOR
-.P
-Colin Woodbury <colin@fosskers.ca>
-
-.SH CONTRIBUTORS
-.P
-Chris Warrick
-.P
-Brayden Banks
-.P
-Denis Kasak
-.P
-Edwin Marshall
-.P
-Jimmy Brisson
-.P
-Kyle Raftogianis
-.P
-Nicholas Clarke
-
-.SH TRANSLATORS
-.P
-(   Polish   ) Chris Warrick and Michał Kurek
-.P
-(  Croatian  ) Denis Kasak and "stranac"
-.P
-(  Swedish   ) Fredrik Haikarainen and Daniel Beecham
-.P
-(   German   ) Lukas Niederbremer
-.P
-(  Spanish   ) Alejandro Gómez, Sergio Conde, and Max Ferrer
-.P
-( Portuguese ) Henry Kupty, Thiago Perrotta, and Wagner Amaral
-.P
-(   French   ) Ma Jiehong and Fabien Dubosson
-.P
-(  Russian   ) Kyrylo Silin and Alexey Kotlyarov
-.P
-(  Italian   ) Bob Valantin and Cristian Tentella
-.P
-(  Serbian   ) Filip Brcic
-.P
-( Norwegian  ) "chinatsun"
-.P
-( Indonesian ) "pak tua Greg"
-.P
-( Chinese    ) Kai Zhang
-.P
-( Japanese   ) Onoue Takuro
-.P
-( Esperanto  ) Zachary Matthews
-.P
-(   Dutch    ) Joris Blanken
+'\" t
+.\" Man page for `aura`
+.\" Written by Colin Woodbury <colin@fosskers.ca>
+.
+.TH aura 8 "2021 January" "Aura" "Aura Manual"
+.
+.de SAMPLE      \" Indented example - on its own paragraph.
+.  P
+.  RS
+.  EX
+..
+.de ESAMPLE     \" End of Indented example.
+.  EE
+.  RE
+..
+.de RSAMPLE     \" Relative sample - even more indented example.
+.  RS
+.  SAMPLE
+..
+.de ERSAMPLE    \" End of Relative sample.
+.  ESAMPLE
+.  RE
+..
+.
+.ds ellipsis \&.\|.\|.\&
+.\" Format repeatable parameter (1 or more) with ellipsis.
+.ds multi                 \fI\\$1\fP\fR\\ \\*[ellipsis]\fP
+.\" Format optional repeatable parameter (0 or more)
+.\" with ellipsis and square brackets.
+.ds multi-optional \fR[\fP\fI\\$1\fP\fR\\ \\*[ellipsis]]\fP
+.ds packages          \\*[multi          packages]
+.ds packages-optional \\*[multi-optional packages]
+.
+.SH NAME
+.
+aura \- package manager utility and AUR helper
+.
+.SH SYNOPSIS
+.
+.SY aura
+.I OPERATION
+\*[multi-optional OPTIONS]
+\*[multi-optional targets]
+.YS
+.
+.SH DESCRIPTION
+.
+.B aura
+is a secure, multilingual package manager for Arch Linux written in Haskell.
+.
+It connects to both the official Arch repositories and to the
+Arch User Repositories (AUR),
+allowing easy control of all packages on an Arch system.
+.
+Aura allows
+.I all
+pacman operations and provides
+.I new
+custom ones for dealing with AUR packages.
+.
+.SH OPERATIONS
+.
+.TP
+.BR \-A ", " \-\-aursync " \*[packages-optional]"
+.
+Perform actions involving the
+.BR A UR.
+.
+Default action installs packages from the AUR.
+.
+.IP
+During building, makepkg output is
+.I not
+shown by default.
+.
+After building, the built
+.I *.pkg.tar.xz
+file is moved to the package cache and installed from there.
+.
+This allows for easy AUR package downgrading.
+.
+.TP
+.BR -B ", " \-\-save
+.
+Manage the saving and restoring of the global package state.
+.
+Default action stores a record of all currently installed packages and their
+versions.
+.
+.TP
+.BR -C ", " \-\-downgrade " \*[packages-optional]"
+.
+Perform actions involving the package
+.BR C ache.
+.
+Default action downgrades specified
+.IR packages .
+.
+.IP
+This process is interactive, allowing the user to choose from any previous
+version they have available in the package cache.
+.
+.TP
+.BR \-L ", " \-\-viewlog
+.
+Perform actions involving the pacman
+.BR L ogfile.
+.
+Default action opens the log for read-only viewing.
+.
+.TP
+.BR \-O ", " \-\-orphans " \*[packages-optional]"
+.
+Perform actions involving
+.BR O rphan
+packages.
+.
+Default action is to list the current orphans.
+.
+.IP
+Orphan packages are packages installed as dependencies,
+but are no longer required by any other package.
+.
+.TP
+.BR \-P ", " \-\-analysis
+.
+Perform security analysis of a
+.BR P KGBUILD.
+.
+Default action reads PKGBUILD from stdin.
+.
+.IP
+Useful for package maintainers and sysadmins to verify the safety of the
+PKGBUILD files that they write.
+.
+To test any package on the AUR, try the following:
+.
+.RSAMPLE
+.BI "aura -Ap " "package" " | aura -P"
+.ERSAMPLE
+.
+.SH AUR SYNC OPTIONS (\fR\-A\fP)
+.
+.TP
+.BR \-a ", " \-\-delmakedeps
+.
+Uninstalls build dependencies that are no longer required after installing the
+main package.
+.
+This prevents the creation of orphan packages.
+.
+Also note that while the package itself will be uninstalled,
+its package file will remain in the cache.
+.
+.TP
+.BR \-c ", " \-\-clean
+.
+After a package's tarball has been built and copied to the package cache,
+delete its build directory immediately.
+.
+.TP
+.BR \-d ", " \-\-deps " \*[packages]"
+.
+View all dependencies of
+.IR packages .
+.
+This process is recursive for AUR packages,
+so all dependencies of dependencies (and so on) will also be shown.
+.
+This can aid the pre-install package research process.
+.
+.TP
+.BR \-i ", " \-\-info " \*[packages]"
+.
+View information about AUR
+.IR packages .
+.
+.TP
+.BR \-k ", " \-\-diff
+.
+Show PKGBUILD diffs.
+.
+When upgrading, using this option will compare the most and second-most recent
+PKGBUILDs and output changes in colour.
+.
+.TP
+.BR \-p ", " \-\-pkgbuild " \*[packages]"
+.
+View PKGBUILDs of AUR
+.IR packages .
+.
+Use this before installing new packages to confirm that the build scripts
+aren't doing anything fishy.
+.
+.TP
+.BR \-q ", " \-\-quiet
+.
+Display less information about certain
+.B \-A
+operations
+(this is useful when processing Aura's output in a script).
+.
+In particular, search and view dependencies will only show uncoloured package
+names.
+.
+.TP
+.BR \-s ", " \-\-search " \*[multi word]"
+.
+Search AUR for packages containing
+.IR word s
+(not regex) in their names or descriptions.
+.
+Multiple terms will narrow down the search.
+.
+Results are sorted by votes.
+.
+Suboptions:
+.
+.RS
+.
+.  TP
+.  B \-\-abc
+.
+Sorts results alphabetically.
+.
+.  TP
+.  BR \-\-head [ =\fIN\fR ]
+.
+Only show the first
+.I N
+results.
+.I N
+defaults to 10.
+.
+.  TP
+.  BR \-\-tail [ =\fIN\fR ]
+.
+Only show the last
+.I N
+results.
+.I N
+defaults to 10.
+.
+.  TP
+.  BR \-r ", " \-\-both
+.
+Show results from the official repos as well.
+.
+.RE
+.
+.TP
+.BR \-u ", " \-\-sysupgrade
+.
+Upgrade all installed AUR packages.
+.B -Au
+is like
+.B -Su
+but for AUR packages.
+.
+.TP
+.BR \-w ", " \-\-downloadonly " \*[packages]"
+.
+Retrieve AUR
+.I packages
+source tarballs,
+but do not build/install/upgrade anything.
+.
+.TP
+.BR \-x ", " \-\-unsuppress
+.
+Unsuppress
+.BR makepkg (8)
+output during building.
+.
+By default this output is suppressed for a more silent install.
+.
+Note that when this option isn't used,
+.B makepkg
+output is actually collected and printed if any errors occur.
+.
+.TP
+.B \-\-json \*[packages]
+.
+Query the AUR RPC for
+.I packages
+info as raw JSON.
+.
+Good for debugging.
+.
+.TP
+.BI \-\-build " path"
+.
+Specify build
+.I path
+when building AUR packages.
+.
+Only the
+.I full
+path of a pre-existing directory can be used.
+.
+Example:
+.
+.RSAMPLE
+aura -A foo --build=/full/path/to/build/location/
+.ERSAMPLE
+.
+.TP
+.BI \-\-builduser " user"
+.
+Specify the
+.I user
+to build packages as.
+.
+This can be useful when logged in as root and a build user is available.
+.
+.TP
+.B \-\-devel
+.
+When ran with
+.BR \-Au ,
+adds all development packages to the queue of packages to upgrade.
+.
+Devel packages are those pulled directly from online repositories,
+via git / mercurial / etc.
+.
+.TP
+.B \-\-dryrun
+.
+When ran with
+.BR \-A " or " \-Au ,
+update checks,
+PKGBUILD diffs,
+and dependency checks will be performed,
+but nothing will be built.
+.
+Also usable with
+.BR \-M .
+.
+.TP
+.B \-\-force
+.
+Always (re)build the specified packages.
+.
+Usually Aura will not rebuild packages whose versions are already available in
+the local package cache.
+.
+.TP
+.B \-\-hotedit
+.
+Before building, prompt the user if they wish to view/edit the
+.IR PKGBUILD ,
+as well as any
+.IR .install " or " .patch
+files.
+.
+However, research into packages (and by extension, their PKGBUILDs) should be
+done by the user before any building occurs.
+.
+Please use
+.BR \-Ap " and " \-Ad
+for this,
+as they will be much faster at presenting information than searching the AUR
+website manually.
+.
+Note that, since aura is run through sudo,
+your local value of
+.RB $ EDITOR
+may not be preserved.
+.
+Run as
+\(lqsudo
+.B \-E
+aura -A --hotedit \*[ellipsis]\(rq
+to preserve your environment.
+.
+To always allow environment variables to be passed,
+have a look at the
+.IR env_reset " and " env_keep
+options in
+.BR sudoers (5).
+.
+.TP
+.B \-\-skipdepcheck
+.
+Perform no dependency solving.
+.
+Consider this when using
+.B \-\-hotedit
+to avoid building annoying dependencies that aren't necessary for your special
+use-case.
+.
+.TP
+.BI \-\-vcspath " path"
+.
+Save the cloned sources of VCS packages (i.e.\& those that end in
+.IR *-git ,
+etc.) in the given
+.IR path ,
+instead of the default
+.IR /var/cache/aura/vcs/ .
+.
+.SH GLOBAL PACKAGE STATE OPTIONS (\fR\-B\fP)
+.
+.TP
+.BR \-c ", " \-\-clean \c
+.I " states-to-retain
+.
+Retains a given number of the most recently saved package states and removes the
+rest.
+.
+.TP
+.BR \-r ", " \-\-restore
+.
+Restores a record kept with
+.BR \-B .
+.
+Attempts to downgrade any packages that were upgraded since the chosen save.
+.
+Will remove any that weren't installed at the time.
+.
+.TP
+.BR \-l ", " \-\-list
+.
+Show all saved package state filenames.
+.
+.SH DOWNGRADE OPTIONS (\fR\-C\fP)
+.
+.TP
+.BR \-b ", " \-\-backup \c
+.I " path
+.
+Backup the package cache to a given directory.
+.
+The given directory must already exist.
+.
+During copying, progress will be shown.
+.
+If the copy takes too long,
+you may want to reduce the number of older versions of each package by using
+.BR \-Cc .
+.
+.TP
+.BR \-c ", " \-\-clean \c
+.I " versions-to-retain
+.
+Retains a given number of package versions for each package,
+and deletes the rest from the package cache.
+.
+Count is made from the most recent version, so using:
+.
+.RSAMPLE
+aura -Cc 3
+.ERSAMPLE
+.
+.IP
+would save the three most recent versions of each package file.
+.
+Giving the number 0 as an argument is identical to
+.BR \-Scc .
+.
+.TP
+.B \-\-notsaved
+.
+Remove only those package files which are not saved in a package record (a la
+.BR \-B ).
+.
+.TP
+.BR \-s ", " \-\-search \c
+.I " regex
+.
+Search the package cache via a
+.IR regex .
+.
+Any package name that matches the regex will be output as-is.
+.
+.SH LOGFILE OPTIONS (\fR\-L\fP)
+.
+.TP
+.BR \-i ", " \-\-info " \*[packages]"
+.
+Displays install/upgrade history for given
+.IR packages .
+.
+Under the \(lqRecent Actions\(rq section,
+only the last five entries will be displayed.
+.
+If there are less than five actions ever performed with the package,
+what is available will be printed.
+.
+.TP
+.BR \-s ", " \-\-search \c
+.I " regex
+.
+Search the pacman log file via a
+.IR regex .
+.
+Useful for singling out any and all actions performed on a package.
+.
+.SH ORPHAN PACKAGE OPTIONS (\fR\-O\fP)
+.
+.TP
+.BR \-a ", " \-\-adopt " \*[packages]"
+.
+Mark
+.I packages
+as being explicitly installed (i.e.\& it's not a dependency).
+.
+.TP
+.BR \-j ", " \-\-abandon
+.
+Uninstall all orphan packages.
+.
+.SH ANALYSIS OPTIONS (\fR\-P\fP)
+.
+.TP
+.BR \-f ", " \-\-file \c
+.I " path
+.
+Analyse a PKGBUILD at the specified
+.IR path .
+.
+.TP
+.BR \-d ", " \-\-dir \c
+.I " path
+.
+Analyse a
+.IR path /PKGBUILD
+found in the specified directory.
+.
+.TP
+.BR \-a ", " \-\-audit
+.
+Analyse the PKGBUILDs of all locally installed AUR packages.
+.
+.SH PACMAN / AURA DUAL FUNCTIONALITY OPTIONS
+.
+.TP
+.B \-\-noconfirm
+.
+Never ask for any Aura or Pacman confirmation.
+.
+Any time a prompt would appear,
+say before building or installation,
+it is assumed the user answered in whatever way would progress the program.
+.
+.TP
+.B \-\-needed
+.
+Don't rebuild/reinstall packages that are already up to date.
+.
+.TP
+.B \-\-debug
+.
+View some handy debugging information.
+.
+.TP
+.BI \-\-color " when"
+.
+Specify when to enable colouring.
+.
+Without this flag, both Aura and Pacman will attempt to colour text if the
+terminal allows it.
+.
+Otherwise, you can pass
+.BR always " or " never
+to be specific about your wants.
+.
+.TP
+.BI \-\-overwrite " glob"
+.
+If there are file conflicts during installation,
+overwrite conflicting files that match the given
+.I glob
+pattern.
+.
+.SH EXPOSED MAKEPKG OPTIONS
+.
+.TP
+.B \-\-ignorearch
+.
+Ignores processor architecture when building packages.
+.
+.TP
+.B \-\-allsource
+.
+Creates a
+.I .src
+file containing all the downloaded sources (code, etc.\&)
+and stores it at
+.IR /var/cache/aura/src/ .
+.
+To change the location where sources are stored,
+use the
+.B \-\-allsourcepath
+flag on command line or via
+.BR aura.conf (5).
+.
+.TP
+.B \-\-skipinteg
+.
+Skip package source integrity checks (hash sums).
+.
+.TP
+.B \-\-skippgpcheck
+.
+Skip all PGP checks.
+.
+.SH LANGUAGE OPTIONS
+.
+Aura is available in multiple languages.
+.
+As options, they can be used with either their English names or their real
+names written in their native characters.
+.
+The available languages are, in option form:
+.
+.TS \" Tab-separated
+l l.
+\fB\-\-english\fP	(default)
+\fB\-\-japanese\fP	\fB\-\-日本語\fP
+\fB\-\-polish\fP	\fB\-\-polski\fP
+\fB\-\-croatian\fP	\fB\-\-hrvatski\fP
+\fB\-\-swedish\fP	\fB\-\-svenska\fP
+\fB\-\-german\fP	\fB\-\-deutsch\fP
+\fB\-\-spanish\fP	\fB\-\-español\fP
+\fB\-\-portuguese\fP	\fB\-\-português\fP
+\fB\-\-french\fP	\fB\-\-français\fP
+\fB\-\-russian\fP	\fB\-\-русский\fP
+\fB\-\-italian\fP	\fB\-\-italiano\fP
+\fB\-\-serbian\fP	\fB\-\-српски\fP
+\fB\-\-norwegian\fP	\fB\-\-norsk\fP
+\fB\-\-indonesian\fP
+\fB\-\-chinese\fP	\fB\-\-中文\fP
+\fB\-\-esperanto\fP
+\fB\-\-dutch\fP	\fB\-\-nederlands\fP
+.TE
+.
+.SH PRO TIPS
+.
+.IP \(bu 2n
+.
+If you build a package and then choose not to install it,
+the built package file will still be moved to the cache.
+You can then install it whenever you want with
+.BR \-C .
+.
+.IP \(bu 2n
+.
+Research packages using
+.BR \-Ad \ ( \-\-deps ),
+.BR \-Ai \ ( \-\-info )
+and
+.BR \-Ap \ ( \-\-pkgbuild )!
+.
+.IP \(bu 2n
+.
+When upgrading, use
+.B \-Akua
+instead of just
+.BR \-Au .
+.
+This will remove make deps, as well as show PKGBUILD diffs before building.
+.
+.SH SEE ALSO
+.
+.BR aura.conf (5),
+.BR pacman (8),
+.BR pacman.conf (5),
+.BR makepkg (8)
+.
+.SH BUGS
+.
+It is not recommended to install non-AUR packages with pacman or aura.
+.
+Aura will assume they are AUR packages during a
+.B \-Au
+and attempt to upgrade them.
+.
+If a name collision occurs (that is, if there is a legitimate AUR package with
+the same name as the one you installed) previous installations could be
+overwritten.
+.
+.SH AUTHOR
+.
+Colin Woodbury <colin@fosskers.ca>
+.
+.SH CONTRIBUTORS
+.
+.TS \" Tab-separated
+l .
+Chris Warrick
+Brayden Banks
+Denis Kasak
+Edwin Marshall
+Jimmy Brisson
+Kyle Raftogianis
+Nicholas Clarke
+.TE
+.
+.SH TRANSLATORS
+.
+.TS \" Tab-separated
+c l .
+Polish	Chris Warrick and Michał Kurek
+Croatian	Denis Kasak and "stranac"
+Swedish	Fredrik Haikarainen and Daniel Beecham
+German	Lukas Niederbremer
+Spanish	Alejandro Gómez, Sergio Conde, and Max Ferrer
+Portuguese	Henry Kupty, Thiago Perrotta, and Wagner Amaral
+French	Ma Jiehong and Fabien Dubosson
+Russian	Kyrylo Silin and Alexey Kotlyarov
+Italian	Bob Valantin and Cristian Tentella
+Serbian	Filip Brcic
+Norwegian	"chinatsun"
+Indonesian	"pak tua Greg"
+Chinese	Kai Zhang
+Japanese	Onoue Takuro
+Esperanto	Zachary Matthews
+Dutch	Joris Blanken
+Turkish	Cihan Alkan
+.TE
diff --git a/doc/aura.conf.5 b/doc/aura.conf.5
--- a/doc/aura.conf.5
+++ b/doc/aura.conf.5
@@ -1,128 +1,144 @@
+'\" t
 .\" Man page for `aura.conf`
 .\" Written by Colin Woodbury <colin@fosskers.ca>
-
-.TH aura.conf 5 "2020 May" "Aura" "Aura Manual"
-
-.\" Disable hyphenation.
-.nh
-
-.de SAMPLE
-.br
-.RS
-.nf
-.nh
+.
+.TH aura.conf 5 "2021 January" "Aura" "Aura Manual"
+.
+.de SAMPLE      \" Indented example - on its own paragraph.
+.  P
+.  RS
+.  EX
 ..
-.de ESAMPLE
-.hy
-.fi
-.RE
+.de ESAMPLE     \" End of Indented example.
+.  EE
+.  RE
 ..
-
+.de RSAMPLE     \" Relative sample - even more indented example.
+.  RS
+.  SAMPLE
+..
+.de ERSAMPLE    \" End of Relative sample.
+.  ESAMPLE
+.  RE
+..
+.
 .SH NAME
-aura.conf \- Configuration for the Aura Package Manager
-
+.
+aura.conf \- aura package manager configuration file
+.
 .SH SYNOPSIS
+.
 /etc/aura.conf
-
+.
 .SH DESCRIPTION
-.P
-Aura can be configured at runtime by commandline flags, but for users who use
-the same options all the time (say, build paths or language flags) this can be
-verbose. \fIaura.conf\fR lets you make these common settings permanent.
-
+.
+Aura can be configured at runtime by commandline flags,
+but for users who use the same options all the time
+(say, build paths or language flags) this can be verbose.
+.I aura.conf
+lets you make these common settings permanent.
+.
 .SH EXAMPLE
+.
+Overview of options in
+.IR aura.conf :
+.
 .SAMPLE
-# --- Language --- #
-language = en  # English.
+#
+# aura.conf
+#
 
-# --- Build Settings --- #
+#[ Language ]
+language = en
+
+#[ Build Settings ]
 user = <you>
 buildpath = /tmp
 vcspath = /var/cache/aura/vcs
 
-# --- Misc. --- #
+#[ Misc. ]
 editor = vi
 .ESAMPLE
-
+.
 .SH OPTIONS
-.P
+.
+.TP
 .B language
-.RS 4
-Aura can be used in different human languages. This field must be a 2-letter
-language code, similar to those used in LOCALE. The available codes are:
+.
+Aura can be used in different human languages.
+This field must be a 2-letter language code,
+similar to those used in LOCALE.
+The available codes are:
+.
+.TS \" Tab-separated
+box;
+l l.
+Code	Language
 
-.SAMPLE
-|------+------------|
-| Code | Language   |
-|------+------------|
-| nl   | Dutch      |
-| en   | English    |
-| de   | German     |
-| nb   | Norwegian  |
-| sv   | Swedish    |
-|------+------------|
-| fr   | French     |
-| it   | Italian    |
-| pt   | Portuguese |
-| es   | Spanish    |
-|------+------------|
-| hr   | Croatian   |
-| pl   | Polish     |
-| ru   | Russian    |
-| sr   | Serbian    |
-|------+------------|
-| zh   | Chinese    |
-| id   | Indonesian |
-| ja   | Japanese   |
-|------+------------|
-| eo   | Esperanto  |
-|------+------------|
-.ESAMPLE
-.RE
+nl	Dutch
+en	English
+de	German
+nb	Norwegian
+sv	Swedish
 
-.P
+fr	French
+it	Italian
+pt	Portuguese
+es	Spanish
+
+hr	Croatian
+pl	Polish
+ru	Russian
+sr	Serbian
+
+zh	Chinese
+id	Indonesian
+ja	Japanese
+
+eo	Esperanto
+.TE
+.
+.TP
 .B user
-.RS 4
+.
 The real, non-sudo user to build packages as.
-.RE
-
-.P
+.
+.TP
 .B buildpath
-.RS 4
+.
 The location on the filesystem in which to build packages.
-.RE
-
-.P
+.
+.TP
 .B allsourcepath
-.RS 4
+.
 The location on the filesystem in which to save "source packages" built with
-\fI\-\-allsource\fR.
-.RE
-
-.P
+.BR \-\-allsource .
+.
+.TP
 .B vcspath
-.RS 4
+.
 The location on the filesystem in which to store the cloned repositories of
 \fI*-git\fR, etc., packages.
-.RE
-
-.P
+.
+.TP
 .B analyse
-.RS 4
-Aura automatically scans PKGBUILDs for malicious bash usage and other "bad
-practices". Set this to \fIFalse\fR to turn this off.
-.RE
-
-.P
+.
+Aura automatically scans PKGBUILDs for malicious bash usage
+and other "bad practices".
+Set this to
+.B False
+to turn off.
+.
+.TP
 .B editor
-.RS 4
-The editor to use during \fI\-\-hotedit\fR.
-.RE
-
+.
+The editor to use during
+.BR \-\-hotedit .
+.
 .SH SEE ALSO
-.P
-aura(8)
-
+.
+.BR aura (8)
+.
 .SH AUTHOR
-.P
+.
 Colin Woodbury <colin@fosskers.ca>
diff --git a/doc/completions/_aura b/doc/completions/_aura
--- a/doc/completions/_aura
+++ b/doc/completions/_aura
@@ -128,9 +128,9 @@
 # options for passing to _arguments: options for --aursync command
 _aura_opts_aursync_actions=(
     '(-A --aursync)'{-A,--aursync}
-    {-p,--pkgbuild}'[Display an AUR package PKGBUILD]'
+    {-p,--pkgbuild}'[Display an AUR package's PKGBUILD]'
     {-s,--search}'[Search AUR package names and descriptions]'
-    {-w,--downloadonly}'[Download an AUR package source tarball]'
+    {-w,--downloadonly}'[Download an AUR package's source tarball]'
 )
 
 # options for passing to _arguments: options for --aursync command
diff --git a/exec/Aura/Commands/C.hs b/exec/Aura/Commands/C.hs
--- a/exec/Aura/Commands/C.hs
+++ b/exec/Aura/Commands/C.hs
@@ -1,6 +1,7 @@
 {-# LANGUAGE LambdaCase         #-}
 {-# LANGUAGE NumericUnderscores #-}
 {-# LANGUAGE TypeApplications   #-}
+{-# LANGUAGE BangPatterns       #-}
 
 -- |
 -- Module    : Aura.Commands.C
@@ -9,16 +10,16 @@
 -- Maintainer: Colin Woodbury <colin@fosskers.ca>
 --
 -- Handle all @-C@ flags - those which involve the package cache.
-
 module Aura.Commands.C
   ( downgradePackages
   , searchCache
   , backupCache
   , cleanCache
   , cleanNotSaved
-  ) where
+  , cleanDir ) where
 
 import           Aura.Cache
+import           Aura.Build (vcsStore)
 import           Aura.Colour (red)
 import           Aura.Core
 import           Aura.IO
@@ -38,9 +39,9 @@
 import qualified RIO.NonEmpty as NEL
 import qualified RIO.Set as S
 import qualified RIO.Text as T
+import           RIO.FilePath
 
 ---
-
 -- | Interactive. Gives the user a choice as to exactly what versions
 -- they want to downgrade to.
 downgradePackages :: NonEmpty PkgName -> RIO Env ()
@@ -193,3 +194,11 @@
 groupByName pkgs = L.groupBy sameBaseName $ L.sort pkgs
     where sameBaseName a b = baseName a == baseName b
           baseName p = spName <$> simplepkg p
+
+-- | Delete all the files in the given path dir
+cleanDir :: RIO Env ()
+cleanDir = do
+  ss <- asks settings
+  let !vcsPath = fromMaybe vcsStore . vcsPathOf $ buildConfigOf ss
+  notify ss cleanCache_6
+  listDirectory vcsPath >>= traverse_ (removeDirectoryRecursive . (</>) vcsPath)
diff --git a/exec/Aura/Flags.hs b/exec/Aura/Flags.hs
--- a/exec/Aura/Flags.hs
+++ b/exec/Aura/Flags.hs
@@ -274,6 +274,7 @@
   | CacheClean  !Word !CleanMode
   | CacheCleanNotSaved
   | CacheSearch !Text
+  | CacheCleanVCS
   deriving (Show)
 
 data LogOp
@@ -341,13 +342,14 @@
 cache :: Parser AuraOp
 cache = bigC *> (Cache <$> (fmap Left mods <|> fmap Right somePkgs))
   where bigC = flag' () (long "downgrade" <> short 'C' <> help "Interact with the package cache.")
-        mods = backup <|> clean <|> clean' <|> search
+        mods = backup <|> clean <|> clean' <|> search <|> cleanVCS
         backup = CacheBackup <$> option (eitherReader absFilePath) (long "backup" <> short 'b' <> metavar "PATH" <> help "Backup the package cache to a given directory." <> hidden)
         clean  = CacheClean
           <$> option auto (long "clean" <> short 'c' <> metavar "N" <> help "Save the most recent N versions of a package in the cache, deleting the rest." <> hidden)
           <*> flag Quantity AndUninstalled (long "uninstalled" <> short 'u' <> help "Add to -c. Clears out any uninstalled packages from the cache.")
         clean' = flag' CacheCleanNotSaved (long "notsaved" <> help "Clean out any cached package files which doesn't appear in any saved state." <> hidden)
         search = CacheSearch <$> strOption (long "search" <> short 's' <> metavar "STRING" <> help "Search the package cache via a search string." <> hidden)
+        cleanVCS = flag' CacheCleanVCS (long "vcs" <> short 'v' <> help "Clears the vcs cache directory" <> hidden)
 
 log :: Parser AuraOp
 log = bigL *> (Log <$> optional mods)
diff --git a/exec/aura.hs b/exec/aura.hs
--- a/exec/aura.hs
+++ b/exec/aura.hs
@@ -138,6 +138,7 @@
       Left (CacheClean n u)   -> sudo $ C.cleanCache n u
       Left CacheCleanNotSaved -> sudo C.cleanNotSaved
       Left (CacheBackup pth)  -> sudo $ C.backupCache pth
+      Left CacheCleanVCS      -> sudo C.cleanDir
     Right (Log o) -> case o of
       Nothing            -> L.viewLogFile
       Just (LogInfo ps)  -> L.logInfoOnPkg ps
diff --git a/lib/Aura/Languages.hs b/lib/Aura/Languages.hs
--- a/lib/Aura/Languages.hs
+++ b/lib/Aura/Languages.hs
@@ -49,33 +49,36 @@
     , (Japanese,   "Onoue Takuro")
     , (Esperanto,  "Zachary Matthews")
     , (Dutch,      "Joris Blanken")
+    , (Turkish,    "Cihan Alkan")
     ]
 
 -- These need updating! Or removing...
 languageNames :: Language -> Map Language T.Text
-languageNames = M.fromList . zip [ Japanese, Polish, Croatian, Swedish, German, Spanish, Portuguese, French, Russian, Italian, Serbian, Norwegian, Indonesia, Chinese, Esperanto, Dutch ] . \case
-    Japanese   -> [ "日本語", "ポーランド語", "クロアチア語", "スウェーデン語", "ドイツ語", "スペイン語", "ポルトガル語", "フランス語", "ロシア語", "イタリア語", "セルビア語", "ノルウェー語", "インドネシア語", "中国語", "エスペラント", "オランダ語" ]
-    Polish     -> [ "Japanese", "polski", "chorwacki", "szwedzki", "niemiecki", "hiszpański", "portugalski", "francuski", "rosyjski", "włoski", "serbski", "norweski", "indonezyjski", "chiński", "esperanto", "niderlandzki" ]
-    Croatian   -> [ "Japanese", "poljski", "hrvatski", "švedski", "njemački", "španjolski", "portugalski", "francuski", "ruski", "talijanski", "srpski", "norveški", "Indonesian", "Chinese", "Esperanto", "Dutch" ]
-    Swedish    -> [ "Japanese", "Polska", "Kroatiska", "Svenska", "Tyska", "Spanska", "Portugisiska", "Franska", "Ryska", "Italienska", "Serbiska", "Norska", "Indonesian", "Chinese", "Esperanto", "Dutch" ]
-    German     -> [ "Japanisch", "Polnisch", "Kroatisch", "Schwedisch", "Deutsch", "Spanisch", "Portugiesisch", "Französisch", "Russisch", "Italienisch", "Serbisch", "Norwegisch", "Indonesisch", "Chinese", "Esperanto", "Dutch" ]
-    Spanish    -> [ "Japanese", "Polaco", "Croata", "Sueco", "Alemán", "Español", "Portugués", "Francés", "Ruso", "Italiano", "Serbio", "Noruego", "Indonesio", "Chinese", "Esperanto", "Dutch" ]
-    Portuguese -> [ "Japonês", "Polonês", "Croata", "Sueco", "Alemão", "Espanhol", "Português", "Francês", "Russo", "Italiano", "Sérvio", "Norueguês", "Indonésio", "Chinês", "Esperanto", "Dutch" ]
-    French     -> [ "Japanese", "Polonais", "Croate", "Suédois", "Allemand", "Espagnol", "Portugais", "Français", "Russe", "Italien", "Serbe", "Norvégien", "Indonesian", "Chinese", "Esperanto", "Dutch" ]
-    Russian    -> [ "Японский", "Польский", "Хорватский", "Шведский", "Немецкий", "Испанский", "Португальский", "Французский", "Русский", "Итальянский", "Сербский", "Норвежский", "Индонезийский", "Китайский", "Эсперанто", "Dutch" ]
-    Italian    -> [ "Giapponese", "Polacco", "Croato", "Svedese", "Tedesco", "Spagnolo", "Portoghese", "Francese", "Russo", "Italiano", "Serbo", "Norvegese", "Indonesiano", "Cinese", "Esperanto", "Dutch" ]
-    Serbian    -> [ "Japanese", "Пољски", "Хрватски", "Шведски", "Немачки", "Шпански", "Португалски", "Француски", "Руски", "Италијански", "Српски", "", "Indonesian", "Chinese", "Esperanto", "Dutch" ]
-    Norwegian  -> [ "Japanese", "Polsk", "Kroatisk", "Svensk", "Tysk", "Spansk", "Portugisisk", "Fransk", "Russisk", "Italiensk", "Serbisk", "Norsk", "Indonesian", "Chinese", "Esperanto", "Dutch" ]
-    Indonesia  -> [ "Japanese", "Polandia", "Kroasia", "Swedia", "Jerman", "Spanyol", "Portugis", "Prancis", "Rusia", "Italia", "Serbia", "Norwegia", "Indonesian", "Chinese", "Esperanto", "Dutch" ]
-    Chinese    -> [ "日语", "波兰语", "克罗地亚语", "瑞典语", "德语", "西班牙语", "葡萄牙语", "法语", "俄语", "意大利语", "塞尔维亚语", "挪威语", "印度尼西亚语", "中文", "世界语", "Dutch" ]
-    Esperanto  -> [ "La japana", "La pola", "La kroata", "La sevda", "La germana", "La hispana", "La portugala", "La franca", "La rusa", "La itala", "La serba", "La norvega", "La indonezia", "La ĉina", "Esperanto", "La nederlanda" ]
-    Dutch      -> [ "Japans", "Pools", "Kroatisch", "Zweeds", "Duits", "Spaans", "Portugees", "Frans", "Russisch", "Italiaans", "Servisch", "Noors", "Indonesisch", "Chinees", "Esperanto", "Nederlands" ]
-    _          -> [ "Japanese", "Polish", "Croatian", "Swedish", "German", "Spanish", "Portuguese", "French", "Russian", "Italian", "Serbian", "Norwegian", "Indonesian", "Chinese", "Esperanto", "Dutch" ]
+languageNames = M.fromList . zip [ Japanese, Polish, Croatian, Swedish, German, Spanish, Portuguese, French, Russian, Italian, Serbian, Norwegian, Indonesia, Chinese, Esperanto, Dutch, Turkish ] . \case
+    Japanese   -> [ "日本語", "ポーランド語", "クロアチア語", "スウェーデン語", "ドイツ語", "スペイン語", "ポルトガル語", "フランス語", "ロシア語", "イタリア語", "セルビア語", "ノルウェー語", "インドネシア語", "中国語", "エスペラント", "オランダ語", "トルコ語" ]
+    Turkish    -> [ "Japonca", "Lehçe", "Hırvatça", "İsveççe", "Almanca", "İspanyolca", "Portekizce", "Fransızca", "Rusça", "İtalyanca", "Sırpça", "Norveççe", "Endonezce", "Çince", "Esperanto", "Hollandaca", "Türkçe" ]
+    Polish     -> [ "Japanese", "polski", "chorwacki", "szwedzki", "niemiecki", "hiszpański", "portugalski", "francuski", "rosyjski", "włoski", "serbski", "norweski", "indonezyjski", "chiński", "esperanto", "niderlandzki", "Turkish" ]
+    Croatian   -> [ "Japanese", "poljski", "hrvatski", "švedski", "njemački", "španjolski", "portugalski", "francuski", "ruski", "talijanski", "srpski", "norveški", "Indonesian", "Chinese", "Esperanto", "Dutch", "Turkish" ]
+    Swedish    -> [ "Japanese", "Polska", "Kroatiska", "Svenska", "Tyska", "Spanska", "Portugisiska", "Franska", "Ryska", "Italienska", "Serbiska", "Norska", "Indonesian", "Chinese", "Esperanto", "Dutch", "Turkish" ]
+    German     -> [ "Japanisch", "Polnisch", "Kroatisch", "Schwedisch", "Deutsch", "Spanisch", "Portugiesisch", "Französisch", "Russisch", "Italienisch", "Serbisch", "Norwegisch", "Indonesisch", "Chinese", "Esperanto", "Dutch", "Turkish" ]
+    Spanish    -> [ "Japanese", "Polaco", "Croata", "Sueco", "Alemán", "Español", "Portugués", "Francés", "Ruso", "Italiano", "Serbio", "Noruego", "Indonesio", "Chinese", "Esperanto", "Dutch", "Turkish" ]
+    Portuguese -> [ "Japonês", "Polonês", "Croata", "Sueco", "Alemão", "Espanhol", "Português", "Francês", "Russo", "Italiano", "Sérvio", "Norueguês", "Indonésio", "Chinês", "Esperanto", "Dutch", "Turkish" ]
+    French     -> [ "Japanese", "Polonais", "Croate", "Suédois", "Allemand", "Espagnol", "Portugais", "Français", "Russe", "Italien", "Serbe", "Norvégien", "Indonesian", "Chinese", "Esperanto", "Dutch", "Turkish" ]
+    Russian    -> [ "Японский", "Польский", "Хорватский", "Шведский", "Немецкий", "Испанский", "Португальский", "Французский", "Русский", "Итальянский", "Сербский", "Норвежский", "Индонезийский", "Китайский", "Эсперанто", "Dutch", "Turkish" ]
+    Italian    -> [ "Giapponese", "Polacco", "Croato", "Svedese", "Tedesco", "Spagnolo", "Portoghese", "Francese", "Russo", "Italiano", "Serbo", "Norvegese", "Indonesiano", "Cinese", "Esperanto", "Dutch", "Turkish" ]
+    Serbian    -> [ "Japanese", "Пољски", "Хрватски", "Шведски", "Немачки", "Шпански", "Португалски", "Француски", "Руски", "Италијански", "Српски", "", "Indonesian", "Chinese", "Esperanto", "Dutch", "Turkish" ]
+    Norwegian  -> [ "Japanese", "Polsk", "Kroatisk", "Svensk", "Tysk", "Spansk", "Portugisisk", "Fransk", "Russisk", "Italiensk", "Serbisk", "Norsk", "Indonesian", "Chinese", "Esperanto", "Dutch", "Turkish" ]
+    Indonesia  -> [ "Japanese", "Polandia", "Kroasia", "Swedia", "Jerman", "Spanyol", "Portugis", "Prancis", "Rusia", "Italia", "Serbia", "Norwegia", "Indonesian", "Chinese", "Esperanto", "Dutch", "Turkish" ]
+    Chinese    -> [ "日语", "波兰语", "克罗地亚语", "瑞典语", "德语", "西班牙语", "葡萄牙语", "法语", "俄语", "意大利语", "塞尔维亚语", "挪威语", "印度尼西亚语", "中文", "世界语", "Dutch", "Turkish" ]
+    Esperanto  -> [ "La japana", "La pola", "La kroata", "La sevda", "La germana", "La hispana", "La portugala", "La franca", "La rusa", "La itala", "La serba", "La norvega", "La indonezia", "La ĉina", "Esperanto", "La nederlanda", "Turkish" ]
+    Dutch      -> [ "Japans", "Pools", "Kroatisch", "Zweeds", "Duits", "Spaans", "Portugees", "Frans", "Russisch", "Italiaans", "Servisch", "Noors", "Indonesisch", "Chinees", "Esperanto", "Nederlands", "Turkish" ]
+    _          -> [ "Japanese", "Polish", "Croatian", "Swedish", "German", "Spanish", "Portuguese", "French", "Russian", "Italian", "Serbian", "Norwegian", "Indonesian", "Chinese", "Esperanto", "Dutch", "Turkish" ]
 
 translatorMsgTitle :: Language -> Text
 translatorMsgTitle = \case
     Japanese   -> "Auraの翻訳者："
     Polish     -> "Tłumacze Aury:"
+    Turkish     -> "Aura Çevirmeni::"
     Croatian   -> "Aura Prevoditelji:"
     Swedish    -> "Aura Översättare:"
     German     -> "Aura Übersetzer:"
@@ -112,6 +115,7 @@
 langFromLocale :: Text -> Maybe Language
 langFromLocale = T.take 2 >>> \case
   "ja" -> Just Japanese
+  "tr" -> Just Turkish
   "pl" -> Just Polish
   "hr" -> Just Croatian
   "sv" -> Just Swedish
@@ -138,6 +142,7 @@
 checkDBLock_1 = \case
     Japanese   -> "パッケージデータベースが閉鎖されている状態です。開放したらキーを押して続行してください。"
     Polish     -> "Baza pakietów jest zablokowana. Kiedy zostanie odblokowana naciśnij enter aby kontynuować"
+    Turkish    -> "Paket veritabanı kilitlendi. Devam etmek için kilidi açıldığında enter tuşuna basın."
     Croatian   -> "Baza paketa je zaključana. Kad se otključa, pritisnite enter da biste nastavili."
     German     -> "Die Paketdatenbank ist gesperrt. Drücken Sie Enter wenn sie entsperrt ist um fortzufahren."
     Spanish    -> "La base de datos de paquetes está bloqueada. Presiona enter cuando esté desbloqueada para continuar."
@@ -156,6 +161,7 @@
 trueRoot_3 = \case
     Japanese   -> "「root」としてパッケージを作成するのは「makepkg v4.2」で不可能になりました。"
     Polish     -> "Od makepkg v4.2, budowanie jako root nie jest dozwolone."
+    Turkish    -> "Makepkg v4.2'den itibaren, kök olarak oluşturmak artık mümkün değildir."
     German     -> "Seit makepkg v4.2 ist es nicht mehr möglich als root zu bauen."
     Spanish    -> "Desde makepkg v4.2 no es posible compilar paquetes como root."
     Portuguese -> "A partir da versão v4.2 de makepkg, não é mais possível compilar como root."
@@ -171,6 +177,7 @@
 mustBeRoot_1 = let sudo = bt @Text "sudo" in \case
     Japanese   -> sudo <> "を使わないとそれができない！"
     Polish     -> "Musisz użyć " <> sudo <> ", żeby to zrobić."
+    Turkish    -> "Sudo kullanmadan bu işlemi gerçekleştiremezsiniz."
     Croatian   -> "Morate koristiti" <> sudo <> "za ovu radnju."
     Swedish    -> "Du måste använda " <> sudo <> " för det."
     German     -> "Sie müssen dafür " <> sudo <> " benutzen."
@@ -193,6 +200,7 @@
 buildPackages_1 :: PkgName -> Language -> Doc AnsiStyle
 buildPackages_1 (bt . pnName -> p) = \case
     Japanese   -> p <> "を作成中・・・"
+    Turkish    -> "İnşa ediliyor " <> p <> "..."
     Polish     -> "Budowanie " <> p <> "..."
     Croatian   -> "Gradim " <> p <> "..."
     Swedish    -> "Bygger paket " <> p <> "..."
@@ -213,12 +221,14 @@
 buildPackages_2 :: Language -> Doc AnsiStyle
 buildPackages_2 = \case
     Polish     -> "'--allsource' wykryte. Nie zostaną zbudowane żadne pakiety."
+    Turkish    -> "'--allsource' bulundu. Yüklenebilir gerçek paketler oluşturulmayacaktır."
     Spanish    -> "'--allsource' detectado. No se construirán paquetes instalables reales."
     _          -> "'--allsource' detected. No actual installable packages will be built."
 
 buildPackages_3 :: FilePath -> Language -> Doc AnsiStyle
 buildPackages_3 fp = \case
     Polish     -> "Wszystkie pliki .src.tar.gz zostały zbudowane i przekopiowane do: " <> pretty fp
+    Turkish    -> "Tüm .src.tar.gz dosyaları oluşturuldu ve şuraya kopyalandı: " <> pretty fp
     Spanish    -> "Todos los archivos .src.tar.gz fueron construidos y copiados a: " <> pretty fp
     _          -> "All .src.tar.gz files were built and copied to: " <> pretty fp
 
@@ -261,7 +271,7 @@
     Norwegian  -> "Vil du fortsette likevel?"
     Italian    -> "Procedere comunque?"
     Portuguese -> "Gostaria de continuar mesmo assim?"
-    French     -> "Voulez-vous tout de même continuer ?"
+    French     -> "Voulez-vous tout de même continuer ?"
     Russian    -> "Продолжить, несмотря ни на что?"
     Indonesia  -> "Apakah anda tetap ingin melanjutkan?"
     Chinese    -> "你仍然希望继续吗？"
@@ -301,7 +311,7 @@
 
 buildFail_9 :: Language -> Doc AnsiStyle
 buildFail_9 = \case
-  Polish    -> "Nie udało się zlokalizować żadnych zbudowanych pakietów (*.pkg.tar.xz)."
+  Polish    -> "Nie udało się zlokalizować żadnych zbudowanych pakietów (*.pkg.tar.xz)."
   Spanish   -> "Error al detectar todos los archivo de paquete (*.pkg.tar.xz)."
   Italian   -> "Non è stato possibile trovare nessun archivio risultante dalla compilazione del pacchetto (*.pkg.tar.xz)."
   Esperanto -> "Paneis detekti ĉiujn dosierojn de pakaĵoj (*.pkg.tar.xz)."
@@ -402,7 +412,7 @@
 
 missingPkg_3 :: Language -> Doc AnsiStyle
 missingPkg_3 = \case
-  Polish     -> "Wystąpił problem podczas reorganizowania grafu zależności. Jeśli widzisz tą wiadomość, coś poszło bardzo nie tak."
+  Polish     -> "Wystąpił problem podczas reorganizowania grafu zależności. Jeśli widzisz tą wiadomość, coś poszło bardzo nie tak."
   Spanish    -> "Se produjo un error al reorganizar el gráfico de dependencia. Si ves esto, algo está muy mal."
   Esperanto  -> "Eraro okazis kiam reorganizi la grafeo de dependeco. Io estas erarega."
   Italian    -> "C'è stato un errore nella riorganizzazione della gerarchia delle dipendenze. Se vedi questo messaggio, qualcosa è andato davvero storto."
@@ -440,7 +450,7 @@
     German     -> "Die folgenden Sprachen sind verfügbar:"
     Spanish    -> "Los siguientes idiomas están disponibles:"
     Portuguese -> "Os seguintes idiomas estão disponíveis:"
-    French     -> "Les langues suivantes sont disponibles :"
+    French     -> "Les langues suivantes sont disponibles :"
     Russian    -> "Доступны следующие языки:"
     Italian    -> "Sono disponibili le seguenti lingue:"
     Serbian    -> "Доступни су следећи језици:"
@@ -464,7 +474,7 @@
     Spanish    -> "Hay una actualización de aura disponible. ¿Deseas actualizar aura primero?"
     Norwegian  -> "En Aura-oppdatering er tilgjengelig. Oppdater den først?"
     Portuguese -> "Uma atualização para Aura está disponível. Deseja atualizar antes?"
-    French     -> "Une mise à jour d'Aura est disponible. Voulez-vous la mettre à jour en premier ?"
+    French     -> "Une mise à jour d'Aura est disponible. Voulez-vous la mettre à jour en premier ?"
     Russian    -> "Доступно обновление Aura. Обновить сперва её?"
     Italian    -> "È disponibile un nuovo aggiornamento per Aura. Eseguirlo subito?"
     Indonesia  -> "Pemutakhiran aura tersedia. Mutakhirkan aura dulu?"
@@ -497,13 +507,14 @@
 install_3 :: Language -> Doc AnsiStyle
 install_3 = \case
     Japanese   -> "続行しますか？"
+    Turkish    -> "Devam edilsin mi?"
     Polish     -> "Kontynuować?"
     Croatian   -> "Nastaviti?"
     Swedish    -> "Fortsätta?"
     German     -> "Fortsetzen?"
     Spanish    -> "¿Continuar?"
     Portuguese -> "Continuar?"
-    French     -> "Continuer ?"
+    French     -> "Continuer ?"
     Russian    -> "Продолжить?"
     Italian    -> "Continuare?"
     Serbian    -> "Наставити?"
@@ -579,7 +590,7 @@
     German     -> "Folgende sind keine AUR-Pakete:"
     Spanish    -> "Los siguientes paquetes no son de AUR:"
     Portuguese -> "Os seguintes não são pacotes AUR:"
-    French     -> "Les éléments suivants ne sont pas des paquets AUR :"
+    French     -> "Les éléments suivants ne sont pas des paquets AUR :"
     Russian    -> "Ниже указано то, что не является пакетами AUR:"
     Italian    -> "I seguenti pacchetti non fanno parte dell'AUR:"
     Serbian    -> "Ово нису пакети:"
@@ -615,7 +626,7 @@
     German     -> "Abhängigkeiten in den Paketquellen:"
     Spanish    -> "Dependencias del repositorio:"
     Portuguese -> "Dependências no repositório:"
-    French     -> "Dépendances du dépôt :"
+    French     -> "Dépendances du dépôt :"
     Russian    -> "Зависимости из репозитория:"
     Italian    -> "Dipendenze del repository:"
     Serbian    -> "Зависности из ризница:"
@@ -631,13 +642,14 @@
 reportPkgsToInstall_2 = \case
     Japanese   -> "AURのパッケージ:"
     Polish     -> "Pakiety AUR:"
+    Turkish    -> "AUR Paketleri:"
     Croatian   -> "AUR Paketi:"
     German     -> "AUR Pakete:"
     Spanish    -> "AUR Paquetes:"
     Norwegian  -> "AUR Pakker:"
     Italian    -> "AUR Pacchetti:"
     Portuguese -> "AUR Pacotes:"
-    French     -> "AUR Paquets :"
+    French     -> "AUR Paquets :"
     Russian    -> "AUR Пакеты:"
     Indonesia  -> "AUR Paket:"
     Chinese    -> "AUR 包："
@@ -695,7 +707,7 @@
     Spanish    -> "Cambios en el PKGBUILD de " <> p <> ":"
     Portuguese -> "Mudanças no PKGBUILD de " <> p <> ":"
     Russian    -> "Изменения, вносимые " <> p <> " PKGBUILD:"
-    French     -> "Changements du PKGBUILD de " <> p <> " :"
+    French     -> "Changements du PKGBUILD de " <> p <> " :"
     Italian    -> "Cambiamenti nel PKGBUILD del pacchetto " <> p <>":"
     Serbian    -> "Промене PKGBUILD-a за " <> p <> ":"
     Norwegian  -> p <> "'s endringer i PKGBUILD:"
@@ -716,7 +728,7 @@
     German     -> "Zu aktualisierendes AUR-Paket:"
     Spanish    -> "Paquetes de AUR a actualizar:"
     Portuguese -> "Pacotes do AUR para atualizar:"
-    French     -> "Paquets AUR à mettre à jour :"
+    French     -> "Paquets AUR à mettre à jour :"
     Russian    -> "Пакеты AUR, готовые для обновления:"
     Italian    -> "Pacchetti dell'AUR da aggiornare:"
     Serbian    -> "Пакети из AUR-а за надоградњу:"
@@ -737,7 +749,7 @@
     German     -> "Folgende Pakete sind in keiner Version im Cache und können daher nicht gedowngradet werden:"
     Spanish    -> "Los siguientes paquetes no tienen versiones en la caché, por lo que no se pueden bajar a versiones anteriores:"
     Portuguese -> "Os seguintes pacotes não possuem versões no cache, logo não podem retornar a uma versão anterior:"
-    French     -> "Aucune version des paquets suivants n'est présente dans le cache ; ils ne peuvent pas être mis à niveau à une version antérieure :"
+    French     -> "Aucune version des paquets suivants n'est présente dans le cache ; ils ne peuvent pas être mis à niveau à une version antérieure :"
     Russian    -> "Следующих пакетов нет в кэше. Следовательно, они не могут быть откачены к старой версии:"
     Italian    -> "Nessuna versione dei seguenti pacchetti è disponibile nella cache, perciò non è possibile riportarli ad una versione precedente:"
     Serbian    -> "Следећи пакети нису ни инсталирани, те се не могу вратити на старију верзију:"
@@ -850,7 +862,7 @@
     Norwegian  -> s <> " pakketilstander vil bli beholdt. Vil du fjerne resten?"
     Italian    -> "Lo stato del pacchetto" <> s <> " sarà mantenuto. Rimuovere il resto?"
     Portuguese -> s <> " estados de pacotes serão mantidos. Remover o resto?"
-    French     -> s <> " états des paquets vont être conservés. Supprimer le reste ?"
+    French     -> s <> " états des paquets vont être conservés. Supprimer le reste ?"
     Russian    -> s <> pluralRussian " состояние пакетов будет оставлено." " состояния пакетов будут оставлены." " состояний пакетов будет оставлено." n <> " Удалить оставшиеся?"
     Indonesia  -> s <> " paket akan tetap sama. Hapus yang lainnya?"
     Chinese    -> s <> " 个包的状态将会保留。删除其它的？"
@@ -933,7 +945,7 @@
     German     -> "Welche Version von " <> p <> " möchten Sie haben?"
     Spanish    -> "¿Qué versión de " <> p <> " deseas?"
     Portuguese -> "Qual versão de " <> p <> " deseja?"
-    French     -> "Quelle version de " <> p <> " voulez-vous ?"
+    French     -> "Quelle version de " <> p <> " voulez-vous ?"
     Russian    -> "Какую версию " <> p <> " вы хотите?"
     Italian    -> "Quale versione di " <> p <> " preferisci?"
     Serbian    -> "Коју верзију " <> p <> "-а желите?"
@@ -993,7 +1005,7 @@
     German     -> "Zu sichernde Paketdateien: " <> n
     Spanish    -> "Ficheros de paquetes de los que se hará copia de seguridad: " <> n
     Portuguese -> "Arquivos de pacotes para backup: " <> n
-    French     -> "Copie de sauvegarde des fichiers de paquets suivants : " <> n
+    French     -> "Copie de sauvegarde des fichiers de paquets suivants : " <> n
     Russian    -> "Файлы пакета для бэкапа: " <> n
     Italian    -> "Archivi dei pacchetti per cui sarà eseguito un backup: " <> n
     Serbian    -> "Датотеке за бекап: " <> n
@@ -1013,7 +1025,7 @@
     German     -> "Sicherung fortsetzen?"
     Spanish    -> "¿Proceder con la copia de seguridad?"
     Portuguese -> "Proceder com o backup?"
-    French     -> "Procéder à la copie de sauvegarde ?"
+    French     -> "Procéder à la copie de sauvegarde ?"
     Russian    -> "Продолжить создание бэкапа?"
     Italian    -> "Procedere con il backup?"
     Serbian    -> "Наставити бекаповање?"
@@ -1068,6 +1080,7 @@
 copyAndNotify_1 (cyan . pretty -> n) = \case
     Japanese   -> "#[" <> n <> "]をコピー中・・・"
     Polish     -> "Kopiowanie #[" <> n <> "]"
+    Turkish    -> "Kopyalanıyor #[" <> n <> "]"
     Croatian   -> "Kopiranje #[" <> n <> "]"
     Swedish    -> "Kopierar #[" <> n <> "]"
     German     -> "Kopiere #[" <> n <> "]"
@@ -1133,7 +1146,7 @@
     German     -> "Der Rest wird gelöscht. Ist das OK?"
     Spanish    -> "El resto se eliminarán. ¿De acuerdo?"
     Portuguese -> "O resto será removido. OK?"
-    French     -> "Le reste sera supprimé. Êtes-vous d'accord ?"
+    French     -> "Le reste sera supprimé. Êtes-vous d'accord ?"
     Russian    -> "Всё остальное будет удалено. Годится?"
     Italian    -> "Il resto sarà rimosso. Continuare?"
     Serbian    -> "Остатак ће бити избрисан. Да ли је то у реду?"
@@ -1231,7 +1244,7 @@
     Norwegian  -> s <> " unødige pakkefiler funnet. Vil du slette?"
     Italian    -> "Sono stati trovati " <> s <> " file non necessari per i pacchetti. Cancellarli?"
     Portuguese -> s <> " pacotes não necessários encontrados. Removê-los?"
-    French     -> s <> " paquets inutiles trouvés. Les supprimer ?"
+    French     -> s <> " paquets inutiles trouvés. Les supprimer ?"
     Russian    -> pluralRussian ("Обнаружен " <> s <> " ненужный файл пакета.") ("Обнаружены " <> s <> " ненужных файла пакетов.") ("Обнаружено " <> s <> " ненужных файлов пакетов.") n <> " Удалить?"
     Indonesia  -> s <> " berkas paket yang tidak dibutuhkan ditemukan. Hapus?"
     Chinese    -> "发现了 " <> s <> " 个不需要的包文件。是否删除？"
@@ -1258,7 +1271,7 @@
     German     -> "Diese sind nicht in der Logdatei aufgetaucht:"
     Spanish    -> "Estos no aparecen en el fichero log:"
     Portuguese -> "Os seguintes não apareceram no arquivo de log:"
-    French     -> "Ceci n'apparaît pas des les journaux (log) :"
+    French     -> "Ceci n'apparaît pas des les journaux (log) :"
     Russian    -> "Следующих пакетов нет в лог-файле:"
     Italian    -> "Questi non sono apparsi nel file di log:"
     Serbian    -> "Ови пакети се не спомињу у дневнику:"
@@ -1329,7 +1342,7 @@
     German     -> "Veraltet!"
     Spanish    -> "¡Desactualizado!"
     Portuguese -> "Desatualizado!"
-    French     -> "Périmé !"
+    French     -> "Périmé !"
     Russian    -> "Устарел!"
     Italian    -> "Non aggiornato all'ultima versione!"
     Serbian    -> "Застарео!"
@@ -1369,7 +1382,7 @@
     Spanish    -> "¡Huérfano!"
     Norwegian  -> "Foreldreløs!"
     Portuguese -> "Órfão!"
-    French     -> "Abandonné !"
+    French     -> "Abandonné !"
     Russian    -> "Осиротевший!"
     Italian    -> "Orfano!"
     Indonesia  -> "Tak dipelihara!"
@@ -1415,7 +1428,7 @@
     Norwegian  -> "De spesifiserte nedgraderingsversjonene er ikke tilgjengelig for:"
     Italian    -> "Non sono disponibili versioni precedenti a cui tornare per:"
     Portuguese -> "Versões anteriores requisitadas não disponívels para:"
-    French     -> "Version antérieure requise non disponible pour :"
+    French     -> "Version antérieure requise non disponible pour :"
     Russian    -> "Запрошенные версии для отката не доступны для:"
     Indonesia  -> "Versi yang diturunkan tidak tersedia untuk: "
     Chinese    -> "请求的降级版本对以下包不可用："
@@ -1507,7 +1520,7 @@
     German     -> "Möchten Sie die PKGBUILD-Datei für " <> p <> " bearbeiten?"
     Spanish    -> "¿Deseas editar el PKGBUILD de " <> p <> "?"
     Portuguese -> "Deseja editar o PKGBUILD de " <> p <> "?"
-    French     -> "Voulez-vous éditer le PKGBUILD de " <> p <> " ?"
+    French     -> "Voulez-vous éditer le PKGBUILD de " <> p <> " ?"
     Russian    -> "Отредактировать PKGBUILD пакета " <> p <> "?"
     Italian    -> "Modificare il PKGBUILD di " <> p <> "?"
     Serbian    -> "Желите ли да измените PKGBUILD за " <> p <> "?"
@@ -1643,6 +1656,7 @@
 yesNoMessage :: Language -> Doc ann
 yesNoMessage = \case
     Polish     -> "[T/n]"
+    Turkish    -> "[e/h]"
     Croatian   -> "[D/n]"
     German     -> "[J/n]"
     Spanish    -> "[S/n]"
@@ -1658,6 +1672,7 @@
 yesPattern :: Language -> [T.Text]
 yesPattern lang = map T.toCaseFold $ case lang of
     Polish     -> ["t", "tak"]
+    Turkish    -> ["e", "evet"]
     Croatian   -> ["d", "da"]
     German     -> ["j", "ja"]
     Spanish    -> ["s", "si"]
diff --git a/lib/Aura/Languages/Fields.hs b/lib/Aura/Languages/Fields.hs
--- a/lib/Aura/Languages/Fields.hs
+++ b/lib/Aura/Languages/Fields.hs
@@ -24,6 +24,7 @@
     Croatian   -> "Paket"
     Swedish    -> "Paket"
     German     -> "Paket"
+    Turkish    -> "Paket"
     Spanish    -> "Paquete"
     Portuguese -> "Pacote"
     French     -> "Paquet"
@@ -43,6 +44,7 @@
     Croatian   -> "Prva instalacija"
     Swedish    -> "Första installation"
     German     -> "Erste Installation"
+    Turkish    -> "İlk Kurulum"
     Spanish    -> "Primera instalación"
     Portuguese -> "Primeira instalação"
     French     -> "Première installation"
@@ -62,6 +64,7 @@
     Croatian   -> "Nadogradnje"
     Swedish    -> "Uppgraderingar"
     German     -> "Aktualisierungen"
+    Turkish    -> "Güncellemeler"
     Spanish    -> "Actualizaciones"
     Portuguese -> "Atualizações"
     French     -> "Mises à jours"
@@ -81,6 +84,7 @@
     Croatian   -> "Nedavne radnje"
     Swedish    -> "Nyliga händelser"
     German     -> "Letzte Aktionen"
+    Turkish    -> "Güncel Eylem"
     Spanish    -> "Acciones Recientes"
     Portuguese -> "Ações Recentes"
     French     -> "Actions récentes"
@@ -100,6 +104,7 @@
     Croatian   -> "Repozitorij"
     Swedish    -> "Repository"
     German     -> "Repository"
+    Turkish    -> "Depo"
     Spanish    -> "Repositorio"
     Portuguese -> "Repositório"
     French     -> "Dépôt"
@@ -119,6 +124,7 @@
     Croatian   -> "Ime"
     Swedish    -> "Namn"
     German     -> "Name"
+    Turkish    -> "İsim"
     Spanish    -> "Nombre"
     Portuguese -> "Nome"
     French     -> "Nom"
@@ -138,6 +144,7 @@
     Croatian   -> "Verzija"
     Swedish    -> "Version"
     German     -> "Version"
+    Turkish    -> "Sürüm"
     Spanish    -> "Versión"
     Portuguese -> "Versão"
     French     -> "Version"
@@ -156,6 +163,7 @@
     Polish     -> "Status w AUR"
     Croatian   -> "AUR Stanje"
     German     -> "AUR-Status"
+    Turkish    -> "AUR Durumu"
     Spanish    -> "Estado en AUR"
     Portuguese -> "Estado no AUR"
     French     -> "Statut de AUR"
@@ -174,6 +182,7 @@
     Spanish    -> "Mantenedor"
     Portuguese -> "Mantenedor"
     French     -> "Mainteneur"
+    Turkish    -> "Sağlayıcı"
     Russian    -> "Ответственный"
     Italian    -> "Mantenitore"
     Norwegian  -> "Vedlikeholder"
@@ -189,6 +198,7 @@
     Croatian   -> "URL Projekta"
     Swedish    -> "Projekt URL"
     German     -> "Projekt-URL"
+    Turkish    -> "Proje URL'si"
     Spanish    -> "URL del proyecto"
     Portuguese -> "URL do projeto"
     French     -> "URL du projet"
@@ -206,6 +216,7 @@
     Japanese   -> "パッケージページ"
     Polish     -> "URL w AUR"
     German     -> "AUR-URL"
+    Turkish    -> "AUR URL"
     Spanish    -> "URL de AUR"
     Portuguese -> "URL no AUR"
     French     -> "URL AUR"
@@ -224,6 +235,7 @@
     Croatian   -> "Licenca"
     Swedish    -> "Licens"
     German     -> "Lizenz"
+    Turkish    -> "Lisans"
     Spanish    -> "Licencia"
     Portuguese -> "Licença"
     French     -> "Licence"
@@ -242,6 +254,7 @@
     Polish     -> "Zależności"
     Croatian   -> "Zavisnosti"
     German     -> "Hängt ab von"
+    Turkish    -> "Gerekler"
     Spanish    -> "Dependencias"
     Portuguese -> "Dependências"
     French     -> "Dépends de"
@@ -257,6 +270,7 @@
 buildDeps = \case
     Japanese   -> "作成時従属パ"
     German     -> "Build-Abhängigkeiten"
+    Turkish    -> "İnşa Gerekleri"
     Spanish    -> "Dependencias de compilación"
     Portuguese -> "Dependências de compilação"
     French     -> "Dépendances de compilation"
@@ -274,6 +288,7 @@
     Croatian   -> "Glasovi"
     Swedish    -> "Röster"
     German     -> "Stimmen"
+    Turkish    -> "Oylar"
     Spanish    -> "Votos"
     Portuguese -> "Votos"
     French     -> "Votes"
@@ -291,6 +306,7 @@
     Japanese   -> "人気"
     Spanish    -> "Popularidad"
     Portuguese -> "Popularidade"
+    Turkish    -> "Popülerlik"
     Italian    -> "Popolarità"
     Esperanto  -> "Populareco"
     Dutch      -> "Populairiteit"
@@ -303,6 +319,7 @@
     Croatian   -> "Opis"
     Swedish    -> "Beskrivning"
     German     -> "Beschreibung"
+    Turkish    -> "Tanım"
     Spanish    -> "Descripción"
     Portuguese -> "Descrição"
     French     -> "Description"
diff --git a/lib/Aura/Types.hs b/lib/Aura/Types.hs
--- a/lib/Aura/Types.hs
+++ b/lib/Aura/Types.hs
@@ -263,7 +263,8 @@
               | Chinese
               | Esperanto
               | Dutch
-                deriving (Eq, Enum, Bounded, Ord, Show)
+              | Turkish
+              deriving (Eq, Enum, Bounded, Ord, Show)
 
 -- | The various ways that dependency resolution can fail.
 data DepError = NonExistant !PkgName !PkgName
