mugshot-0.4.2/0000775000175000017500000000000013517367015015147 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/AUTHORS0000664000175000017500000000034113517364451016216 0ustar bluesabrebluesabre00000000000000Copyright (C) 2013-2019 Sean Davis Artwork Copyright (C) 2013-2015 Simon Steinbeiß Camera functionality based on web_cam_box Copyright (C) 2010 Rick Spencer mugshot-0.4.2/COPYING0000664000175000017500000010451313517364451016207 0ustar bluesabrebluesabre00000000000000 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . mugshot-0.4.2/NEWS0000664000175000017500000001303213517366353015651 0ustar bluesabrebluesabre00000000000000Mugshot NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 28 Jul 2019, Mugshot 0.4.2 - New stable release - New homepage, Mugshot has moved to GitHub! . Homepage: https://github.com/bluesabre/mugshot . Releases: https://github.com/bluesabre/mugshot/releases . Bug Reports: https://github.com/bluesabre/mugshot/issues . Translations: https://www.transifex.com/bluesabreorg/mugshot . Wiki: https://github.com/bluesabre/mugshot/wiki - Translation Updates: . Basque, Belarusian, Brazilian Portuguese, Catalan, Catalan (Valencian), Chinese (Simplified), Croatian, Czech, Danish, Dutch, English (Australia), Esperanto, Finnish, French, Galician, German, Greek, Icelandic, Italian, Japanese, Lithuanian, Norwegian Bokmal, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish 08 Aug 2018, Mugshot 0.4.1 - New stable release - Code Quality: . Replaced deprecated logger.warn with logger.warning . Replaced deprecated module optparse with argparse . Resolved Pylint and PEP8 errors and warnings - Bugs fixed: . TypeError in _spawn(): The argument, args, must be a list (LP: #1443283) . User-specified initials are not correctly loaded (LP: #1574239) . Include Mugshot in Xfce Settings, Personal Settings (LP: #1698626) . Support "-p" and "-w" office phone flags in chfn (LP: #1699285) . FileNotFoundError when comparing profile images (LP: #1771629) - Fixes in minimal chroot environment: . Fix crash when run without AccountsService . Handle OSError: out of pty devices . Specify utf-8 codec for desktop file processing (setup.py) - Translation Updates: . Catalan, Chinese (Simplified), Danish, Lithuanian, Spanish 11 Apr 2018, Mugshot 0.4.0 - New stable release - General: . Update URLs from smdavis.us to bluesabre.org . Upgrade appdata file to latest spec . Move appdata to metainfo, per latest spec - Translation Updates: . Catalan, Croatian, Danish, Lithuanian, Romanian, Spanish, Swedish 02 Nov 2016, Mugshot 0.3.2 - New bugfix release . Mugshot's camera dialog is fixed and should work on all previously supported and current systems! 31 Mar 2016, Mugshot 0.3.1 - New bugfix release . This release targets a number of bugs that were discovered in past releases. To better handle user properties, AccountsService is now better utilized when it is available. - Bugs fixed: . Failure in extracting details from /etc/passwd (LP: #1304920) . Failed reading of /etc/passwd with empty values (LP: #1394064) . Crash when ~/.face is empty or invalid (LP: #1400055) . Crash when unable to read LibreOffice config (LP: #1557744) . Incorrect handling of empty name fields (LP: #1559815) - Known issues: . Mugshot's camera dialog no longer works with recent versions of Clutter. This is due to a change in the video sink and requires a larger fix. 07 Sep 2015, Mugshot 0.3.0 - New development release . As GTK and GStreamer continue to evolve, mugshot's camera was no longer able to keep up in its current form. It now uses Cheese and Clutter to display the video feed and capture photos. . New optional requirements for cameras: Cheese, Clutter, and GtkClutter - Bugs fixed: . Camera doesn't initialize (LP: #1414443) - Known issues: . Some users may find that Mugshot freezes when capturing a photo. This is a known issue in Clutter that seems to affect other applications as well (LP: #1462445) 01 Sep 2014, Mugshot 0.2.5 - General . Fixes startup and improves usability for LDAP users and other users where user details are not properly parsed (LP: #1353530) . Include latest SudoDialog 02 Aug 2014, Mugshot 0.2.4 - General . Add AppData files . Upgrade license from GPL3 to GPL3+ - Bugs fixed: . Mugshot does not correctly expand user details (LP: #1310634) . Remove hard dependency on AccountsService (LP: #1311938) . Fix timeout by using non-interactive chfn (LP: #1315709) 04 Apr 2014, Mugshot 0.2.3 - General: . Check if user has sudo rights, disable first/last name change if not . Populate the Initials field based on first/last name fields . Hide "Remove" when there is no profile image set . Cleanup temporary files when closed . Package is now 100% PEP8-compliant - AccountsService: . Scale images on save to accomodate AccountsService max size . Use AccountsService profile image if ~/.face does not exist . Sync AccountsService profile image to ~/.face - Bugs fixed: . mugshot is unable to store profile picture (LP: #1298665) 09 Mar 2014, Mugshot 0.2.2 - General: . Fixed crash when saving user details with a non-English locale . Fixed apparently untranslated dialog . Updated translations - Bugs fixed: . Fix crash with IndexError in init_user_details (LP: #1287468) 02 Mar 2014, Mugshot 0.2.1 - General: . Fixed typo that incorrectly hid the manual photo browser instead of stock . Use GLib for better environment and user settings detection . Use the SudoDialog developed for Catfish to better receive password . Correctly stop processing updates if password was incorrectly entered - Bugs fixed: . Add option to remove current profile picture (LP: #1286897) . Add AccountsService support to set profile picture (LP: #1273896) . mugshot fails at attempt to change avatar (LP: #1284720) 25 Jan 2014, Mugshot 0.2 - General: . Mugshot is now designed for use with only Python 3. . Dependency on yelp/ghelp has been removed. . Packaging has been simplified. 27 Jul 2013, Mugshot 0.1 - Initial release. mugshot-0.4.2/PKG-INFO0000664000175000017500000000137413517367015016251 0ustar bluesabrebluesabre00000000000000Metadata-Version: 1.1 Name: mugshot Version: 0.4.2 Summary: lightweight user configuration utility Home-page: https://github.com/bluesabre/mugshot Author: Sean Davis Author-email: sean@bluesabre.org License: GPL-3+ Description: A lightweight user configuration utility. It allows you to easily set profile image and user details for your user profile and any supported applications. Platform: UNKNOWN Requires: dbus Requires: gi Requires: gi.repository.Cheese Requires: gi.repository.Clutter Requires: gi.repository.GLib Requires: gi.repository.GObject Requires: gi.repository.GdkPixbuf Requires: gi.repository.Gio Requires: gi.repository.Gst Requires: gi.repository.Gtk Requires: gi.repository.GtkClutter Requires: pexpect Provides: mugshot Provides: mugshot_lib mugshot-0.4.2/README.md0000664000175000017500000000345213517364451016433 0ustar bluesabrebluesabre00000000000000# Mugshot **Mugshot** is a lightweight user configuration utility for Linux designed for simplicity and ease of use. Quickly update your personal profile and sync your updates across applications. ![Mugshot window](https://screenshots.bluesabre.org/mugshot/docs/mugshot-main-2.png) ## Features - Update your user profile image (~/.face and AccountService) - Update user details stored in /etc/passwd (used by *finger* and other desktop applications) - (Optionally) sync your profile image to your *Pidgin* buddy icon - (Optionally) sync your user details to *LibreOffice* ## Dependencies ### Build Requirements - gir1.2-gtk-3.0 - python3 - python3-dbus - python3-distutils - [python3-distutils-extra](https://launchpad.net/python-distutils-extra) - python3-gi - python3-pexpect ### Runtime Requirements - chfn - python3-cairo - python3-dbus - python3-gi - python3-pexpect ### Optional (for webcam support) - gstreamer1.0-plugins-good - gstreamer1.0-tools - gir1.2-cheese-3.0 - gir1.2-gtkclutter-1.0 ## Installation Please refer to the [Mugshot Wiki](https://github.com/bluesabre/mugshot/wiki/Installation) for installation instructions. ## Links - [Homepage](https://github.com/bluesabre/mugshot) - [Releases](https://github.com/bluesabre/mugshot/releases) - [Bug Reports](https://github.com/bluesabre/mugshot/issues) - [Translations](https://www.transifex.com/bluesabreorg/mugshot) - [Wiki](https://github.com/bluesabre/mugshot/wiki) ## Troubleshooting If you see the following error: (mugshot:22748): GLib-GIO-ERROR **: Settings schema 'apps.mugshot' is not installed Be sure to copy data/glib-2.0/schemas/apps.mugshot.gschema.xml to either: - /usr/share/glib-2.0/schemas, or - /usr/local/share/glib-2.0/schemas and run glib-compile-schemas on that directory before running **Mugshot**. mugshot-0.4.2/bin/0000775000175000017500000000000013517367015015717 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/bin/mugshot0000775000175000017500000000242313517364451017335 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . import locale locale.textdomain('mugshot') import sys import os import gi gi.require_version('Gtk', '3.0') # Get project root directory (enable symlink and trunk execution) PROJECT_ROOT_DIRECTORY = os.path.abspath( os.path.dirname(os.path.dirname(os.path.realpath(sys.argv[0])))) # Add project root directory to python search path sys.path.append(PROJECT_ROOT_DIRECTORY) import mugshot mugshot.main() mugshot-0.4.2/data/0000775000175000017500000000000013517367015016060 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/data/glib-2.0/0000775000175000017500000000000013517367015017272 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/data/glib-2.0/schemas/0000775000175000017500000000000013517367015020715 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/data/glib-2.0/schemas/apps.mugshot.gschema.xml0000664000175000017500000000122113517364451025472 0ustar bluesabrebluesabre00000000000000 '' Initials Initials representing the user's name. '' Email Address The user's email address. '' Fax The user's fax number. mugshot-0.4.2/data/media/0000775000175000017500000000000013517367015017137 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/data/media/mugshot.svg0000664000175000017500000013152413517364451021355 0ustar bluesabrebluesabre00000000000000 image/svg+xml 1829102 mugshot-0.4.2/data/media/mugshot_16.svg0000664000175000017500000014273213517364451021666 0ustar bluesabrebluesabre00000000000000 image/svg+xml 1829102 mugshot-0.4.2/data/media/mugshot_22.svg0000664000175000017500000014234013517364451021656 0ustar bluesabrebluesabre00000000000000 image/svg+xml 1829102 mugshot-0.4.2/data/media/mugshot_24.svg0000664000175000017500000014444613517364451021671 0ustar bluesabrebluesabre00000000000000 image/svg+xml 1829102 mugshot-0.4.2/data/media/mugshot_48.svg0000664000175000017500000015210613517364451021667 0ustar bluesabrebluesabre00000000000000 image/svg+xml 1829102 mugshot-0.4.2/data/media/mugshot_64.svg0000664000175000017500000013152413517364451021666 0ustar bluesabrebluesabre00000000000000 image/svg+xml 1829102 mugshot-0.4.2/data/metainfo/0000775000175000017500000000000013517367015017662 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/data/metainfo/mugshot.appdata.xml0000664000175000017500000006420213517367015023507 0ustar bluesabrebluesabre00000000000000 mugshot.desktop CC0-1.0 GPL-3.0+ Mugshot Lightweight user configuration Лёгкаважная канфігурацыя карыстальніка Configuració d'usuari mínima Jednoduché uživatelské nastavení Letvægts brugerkonfiguration Einfache Nutzerkonfiguration Configuración de usuario mínima Kevyt käyttäjätietojen muokkain Configuration d'utilisateur minimale Laka korisnička konfiguracija Semplice configurazione degli utenti Supaprastintas naudotojo konfigūravimas Enkel bruker-konfigurering Lichtgewicht hulpmiddel voor gebruikersinstellingen Lekka konfiguracja użytkownika Configuração de utilizador leve Ресусрсоэффективная (Lightweight) пользовательская конфигурация. Hlavné nastavenia užívateľa Resurssnål användarinställning 轻量级用户配置

Mugshot enables users to easily update personal contact information. With Mugshot, users are able to:

Mugshot дазваляе карыстальнікам зручна змяняць асабістую кантактную інфармацыю. Пры дапамозе Mugshot карыстальнікі могуць:

El Mugshot permet als usuaris actualitzar fàcilment la informació de contacte personal. Amb el Mugshot els usuaris són capaços de:

Mugshot umožňuje uživatelům snadno aktualizovat osobní kontaktní informace. S Mugshotem jsou uživatelé schopni:

Mugshot gør det muligt for brugere at opdatere personlig kontaktinformation. Med Mugshot kan brugere:

Mugshot ermöglicht es Benutzern, auf einfache Weise persönliche Informationen zu ändern. Mit Mugshot können Sie:

Η εφαρμογή Mugshot επιτρέπει στους χρήστες να ενημερώνουν πληροφορίες προσωπικών επαφών με ευκολία. Με το Mugshot , οι χρήστες είναι σε θέση:

Mugshot permite a los usuarios actualizar fácilmente la información de contacto personal. Con Mugshot los usuarios son capaces de:

Mugshotin avulla käyttäjät voivat päivittää henkilökohtaisia yhteystietoja helposti. Mugshotin avulla käyttäjät voivat:

Mugshot permet aux utilisateurs de mettre facilement à jour leurs coordonnées personnelles. Avec Mugshot, les utilisateurs peuvent :

Mugshot consente agli utenti di aggiornare facilmente le informazioni personali di contatto. Con Mugshot, gli utenti possono:

Mugshot įgalina naudotojus lengvai atnaujinti asmeninę kontaktinę informaciją. Su Mugshot, naudotojai gali:

Mugshot stelt gebruikers in staat om eenvoudig persoonlijke contactpersooninformatie bij te werken. Met Mugshot kunnen gebruikers:

Mugshot umożliwia użytkownikom łatwą aktualizację osobistych informacji kontaktowych. Z Mugshot użytkownicy mogą:

O Mugshot permite aos utilizadores actualizar facilmente as informações de contato pessoal. Com o Mugshot, os utilizadores são capazes de:

Mugshot позволяет пользователям легко обновлять личную контактную информацию . С Mugshot , пользователи могут:

S Mugshot si môže používateľ jednoducho upraviť kontaktné údaje. S Mugshot používatelia môžu:

Mugshot tillåter användare att enkelt uppdatera personlig kontaktinformation. Med Mugshot kan användare:

Mugshot 使用户可以轻松更新个人联系信息。 通过 Mugshot,用户可以:

  • Set the account photo displayed at login and optionally synchronize this photo with their Pidgin buddy icon
  • Прызначыць фотаздымак профіля, што адлюстроўваецца ў акне ўваходу і сінхранізаваць яго з Pidgin
  • Configurar la imatge d'usuari que es mostra en la pantalla d'inici de sessió i, opcionalment, sincronitzar aquesta imatge amb la icona d'usuari de Pidgin
  • Nastavit fotografii účtu, která se bude zobrazovat při přihlášení a případně ji nastavit jako ikonu v IM Pidgin
  • Sæt kontoens billede som vises ved login og synkroniser valgfrit dette billede med deres Pidgin venneikon
  • Das Profilfoto, das beim Anmelden angezeigt wird, einstellen und es optional mit dem Pidgin-Frundesymbol synchronisieren.
  • Να ορίσουν τη φωτογραφία λογαριασμού που εμφανίζεται στην οθόνη υποδοχής και προαιρετικά να συγχρονίσουν αυτή τη φωτογραφία με το εικονίδιο του Pidgin buddy.
  • Configurar la imagen de usuario que se muestra en la pantalla de inicio de sesión y, opcionalmente, sincronizar esta imagen con el icono de usuario de Pidgin
  • Asettaa tilin valokuvan, joka näytetään kirjautumisikkunassa ja valinnaisesti synkronoida tämän kuvan Pidginin kaverikuvakkeekseen
  • Définir la photo qui sera affichée pour la connexion à leur session et éventuellement synchroniser cette photo avec l'icône de leur compte Pidgin.
  • Impostare la foto dell'account mostrata al login ed opzionalmente sincronizzare questa foto con il proprio avatar Pidgin
  • Nustatyti, prisijungimo metu rodomą, paskyros nuotrauką ir pasirinktinai sinchronizuoti šią nuotrauką su savo Pidgin naudotojo paveiksliuku
  • Stel de accountfoto in die getoond wordt bij aanmelding en synchroniseer deze foto desgewenst met hun Pidgin-pictogram
  • Ustawić obraz konta wyświetlany podczas logowania i opcjonalnie synchronizowany ze swoją ikoną dla znajomych w Pidgin
  • Definir a fotografia exibida na conta de início de sessão e opcionalmente sincronizar essa fotografia com o seu ícone de amigo no Pidgin
  • Установить фото профиля, отображаемое в окне входа, и опционально синхронизировать это фото с Pidgin.
  • Nastaviť obrázok svojho účtu ktorý sa zobrazí pri prihlasovaní. a možnosť ho synchronizovať s ikonou v Pidgine
  • Ställa in fotot för kontot som visas vid inloggning och valfritt synkronisera detta foto med sin Pidgin buddy ikon
  • 设置登录时显示的帐户照片,并可选择将此照片与其 Pidgin 好友图标同步
  • Set account details stored in /etc/passwd (usable with the finger command) and optionally synchronize with their LibreOffice contact information
  • Увесці звесткі карыстальніка, што захоўваюцца ў /etc/passwd (зручна выкарыстоўваць з загадам finger) і сінхранізаваць іх з LibreOffice
  • Configurar les dades d'usuari emmagatzemades a /etc/passwd (accessibles amb l'ordre finger) i, opcionalment, sincronitzar-les amb la informació de contacte del LibreOffice
  • Nastavit detaily účtu v souboru /etc/passwd (použitelné s příkazem finger) a případně synchronizovat s jejich LibreOffice kontaktními informacemi
  • Sæt kontodetaljer lagret i /etc/passwd (typisk med finger-kommandoen) og synkroniser valgfrit med deres LibreOffice kontaktinformation
  • Kontodetails, die in /etc/passwd gespeichert werden einstellen und optional mit den LibreOffice-Kontaktinformationen synchronisieren.
  • Να ορίσουν τις λεπτομέρειες λογαριασμού που είναι απόθηκευμένες στο /etc/passwd (μπορεί να χρησιμοποιηθεί με την εντολή finger) και προαιρετικά να τις συγχρονίσουν με τις πληροφορίες επαφής του LibreOffice
  • Configurar los datos de usuario almacenados en /etc/passwd (accesibles con la orden finger) y, opcionalmente, sincronizarlos con la información de contacto de LibreOffice
  • Asettaa tilin ominaisuuksia, joita säilytetään tiedostossa /etc/passwd (käytettävissä finger-komennolla) ja valinnaisesti synkronoida nämä tiedot LibreOfficen tietojen kanssa
  • Définir les détails de leur compte dans /etc/passwd (utilisable avec la commande finger) and éventuellement le synchroniser avec leurs informations de contact LibreOffice.
  • Impostare i dettagli dell'account salvati in /etc/passwd (utilizzabile con il comando finger) ed opzionalmente sincronizzarli con le informazioni di contatto di LibreOffice
  • Nustatyti išsamesnę paskyros informaciją, laikomą /etc/passwd (naudojama su finger komanda) ir pasirinktinai sinchronizuoti su LibreOffice kontaktine informacija.
  • Stel accountbijzonderheden in die zijn opgeslagen in /etc/passwd (te gebruiken met de opdracht 'finger') en synchroniseer desgewenst met hun contactpersooninformatie in Libre Office.
  • Ustawić szczegóły konta przechowywane w /etc/passwd (dogodne przy ręcznych poleceniach) i opcjonalnie synchronizowane ze swoimi informacjami kontaktowymi w LibreOffice
  • Defina os detalhes da conta armazenados em /etc/passwd (utilizáveis ​​com o comando finger) e opcionalmente sincronize com as suas informações de contato do LibreOffice
  • Установить детали профиля, хранимые в /etc/passwd (удобно в использовании с командой finger), и опционально синхронизировать эту контактную информацию с Libreoffice.
  • Nastaviť údaje účtu uložené v /etc/passwd (pre použitie s príkazom finger) a možnosť synchronizovať ich s kontaktnými údajmi v LibreOffice
  • Ställa in detaljer som sparas i /etc/passwd (går att använda med fingerkommandot) och valfritt synkronisera med sin kontaktinformation i LibreOffice
  • 设置存储在 / etc / passwd 中的帐户详细信息(可与 finger 命令一起使用),并可选择与其 LibreOffice 联系信息同步
https://screenshots.bluesabre.org/mugshot/mugshot.png https://screenshots.bluesabre.org/mugshot/mugshot-pidgin-sync.png https://github.com/bluesabre/mugshot https://github.com/bluesabre/mugshot/issues https://github.com/bluesabre/mugshot/wiki https://www.transifex.com/bluesabreorg/mugshot sean@bluesabre.org mugshot mugshot

Mugshot has moved to GitHub! This maintenance release includes numerous translation updates.

This release includes a number of code quality improvements, bug fixes, and translations. Mugshot can now be built and run in a minimal chroot environment.

Гэты выпуск уключае паляпшэнні якасці коду, выпраўленні памылак, абнаўленне перакладаў. Цяпер Mugshot можна сабраць і запусціць у мінімальным асяроддзі chroot.

Aquest llançament inclou una sèrie de millores de qualitat de codi, correccions d'errors i traduccions. Mugshot ara es pot costruir i executar en un entorn chroot mínim.

Denne udgivelse inkluderer et antal kvalitetsforbedringer af koden, fejlrettelser og oversættelser. Mugshot kan nu bygges og køres i et minimalt chroot-miljø.

Diese Version enthält eine Reihe von Verbesserungen der Codequalität, Bugfixes und Übersetzungen. Mugshot kann nun in einer minimalen Chroot-Umgebung gebaut und ausgeführt werden.

Esta versión incluye una serie de mejoras en la calidad del código, corrección de errores y traducciones. Mugshot ahora se puede construir y ejecutar en un entorno chroot mínimo.

Į šią laidą įeina daugybė kodo kokybės patobulinimų, klaidų ištaisymų ir vertimų. Dabar Mugshot gali būti sukurta ir paleista minimalioje chroot aplinkoje.

Denna utgåva inkluderar ett antal kodkvalitetsförbättringar, felrättningar, och översättningar. Mugshot kan nu byggas och köras i en minimal chroot-miljö.

此版本包括许多代码质量改进,错误修复和翻译。 Mugshot 现在可以在最小的 chroot 环境中构建和运行。

This stable release adds support for the latest GTK and GStreamer technologies.

У гэтым стабільным выпуску дадалася падтрымка апошніх версій GTK і GStreamer.

Aquesta versió estable afegeix suport per a les últimes tecnologies de GTK i GStreamer.

Denne stabile udgivelse tilføjer understøttelse af de seneste GTK- og GStreamer-teknologier.

Dieses stabile Release bietet Unterstützung für die neuesten GTK- und GStreamer-Technologien.

Esta versión estable añade soporte para las últimas tecnologías de GTK y GStreamer.

Ši stabili laida prideda naujausių GTK ir GStreamer technologijų palaikymą.

Denna stabila utgåva lägger till stöd för de senaste GTK och GStreamer teknologierna.

这个稳定版本增加了对最新 GTK 和 GStreamer 技术的支持。

This development release restores camera dialog functionality that with recent software versions.

Гэты выпуск для распрацоўшчыкаў аднаўляе функцыянальнасць дыялогаў камеры ў апошніх версіях праграмнага забеспячэння.

Aquesta versió de desenvolupament restaura la funcionalitat del diàleg de la càmera amb versions de programari recents.

Denne udviklingsudgivelse gendanner kameradialogfunktionalitet som med nyere softwareversioner.

Diese Entwicklungsversion stellt die Kamera-Dialogfunktionalität mit den neuesten Softwareversionen wieder her.

Esta versión de desarrollo restaura la funcionalidad del diálogo de la cámara con las versiones de software recientes.

Ši kūrimo laida atkuria kameros dialogo funkcionalumą su paskiausiomis programinės įrangos versijomis.

Denna utvecklingsversion återställer kameradialogsfunktionalitet med senaste mjukvaruversioner.

这个开发版本恢复了最近软件版本的相机对话框功能。

This development release fixes a large number of bugs from previous releases. User properties that cannot be edited are now restricted to administrative users.

У гэтым выпуску для распрацоўшчыкаў выпраўленая вялікая колкасць памылак з папярэдніх выпускаў. Уласцівасці карыстальніка, якія нельга рэдагаваць, цяпер даступныя толькі адміністратарам.

Aquesta versió de desenvolupament corregeix un gran nombre d'errors de versions anteriors. Les propietats d'usuari que no es poden editar ara estan restringides als usuaris administradors.

Denne udviklingsudgivelse retter et stort antal fejl fra forrige udgivelser. Brugeregenskaber som ikke kan redigeres er nu begrænset til administrative brugere.

Dieses Entwicklungsrelease behebt eine große Anzahl von Fehlern aus früheren Releases. Benutzereigenschaften, die nicht bearbeitet werden können, sind nun auf administrative Benutzer beschränkt.

Esta versión de desarrollo corrige un gran número de errores de versiones anteriores. Las propiedades de usuario que no se pueden editar ahora están restringidas a los usuarios administradores.

Ši kūrimo laida ištaiso daugybę ankstesnios laidos klaidų. Naudotojo savybės, kurių negalima redaguoti, dabar yra prieinamos tik naudotojams-administratoriams.

To wydanie rozwojowe naprawia liczne błędy z poprzednich wydań. Ustawienia użytkownika które nie mogą być edytowane są teraz dostępne wyłącznie dla administratorów.

Denna utvecklingsversion rättar till ett stort antal fel från föregående versioner. Användaregenskaper som inte kan redigeras är nu begränsade till administrativa användare.

该开发版本修复了以前版本中的大量错误。 无法编辑的用户属性现在仅限于管理用户。

This development release upgrades the camera dialog to use Cheese and Clutter to display and capture the camera feed.

У гэтым выпуску для распрацоўшчыкаў абноўлена дыялогавае акно камеры для выкарыстання Cheese і Clutter для адлюстравання і захопу канала камеры.

Aquesta versió de desenvolupament actualitza el diàleg de la càmera per utilitzar Cheese i Clutter per mostrar i capturar la imatge de la càmera.

Denne udviklingsudgivelse opgraderer kameradialogen så Cheese og Clutter bruges til at vise og optage kamera-feedet.

Diese Entwickler-Version verbessert den Kamera-Dialog, der nun Cheese und Clutter für Anzeige und Aufnahme des Kamera Bildes nutzt.

Esta versión de desarrollo actualiza el diálogo de la cámara para usar Cheese y Clutter para mostrar y capturar la imagen de la cámara.

Cette version de développement améliore le dialogue de la caméra visant à utiliser Cheese et Clutter pour afficher et capturer le retour de la caméra.

Ši kūrimo laida pagerina, kameros rodymui ir fotografavimui skirtą, kameros dialogą, naudojimui su Cheese ir Clutter.

Deze ontwikkelversie waardeert de cameradialoog op om Cheese en Clutter te gebruiken voor het vertonen en vastleggen van de camera-invoer.

To wydanie rozwojowe ulepszą okno kamery, aby używało Cheese i Clutter do wyświetlania i przechwytywania obrazu kamery.

Esta versão de desenvolvimento atualiza o diálogo da câmera para usar o Cheese e o Clutter para exibir e capturar a alimentação da câmera.

Táto verzia programu zlepšuje kamerové okno použitím knižníc Cheese a Clutter na zobrazenie obrazu z kamery.

Denna utvecklingsversion uppgraderar kameradialogen till att använda Cheese och Clutter för att visa och fånga kamerainmatning.

该开发版本升级相机对话框以使用 Cheese 和 Clutter 来显示和捕捉相机输入。

This stable release improves Mugshot functionality for LDAP users, and includes the latest SudoDialog, improving the appearance and usability of the password dialog.

Гэты стабільны выпуск паляпшае функцыянальнасць Mugshot для карыстальнікаў LDAP, уключае апошнюю версію SudoDialog, паляпшэнні вонкавага выгляду і дыялогавага акна ўводу пароля.

Aquesta versió estable millora la funcionalitat del Mugshot per als usuaris d'LDAP i inclou l'últim SudoDialog, que millora l'aparença i la facilitat d'ús del diàleg de la contrasenya.

Tato stabilní verze zlepšuje funkčnost Mugshotu pro uživatele LDAP, a zahrnuje nejnovější SudoDialog, zlepšení vzhledu a použitelnosti dialogu hesla.

Denne stabile udgivelse forbedre Mugshot-funktionaliteter for LDAP-brugere og inkluderer den seneste SudoDialog, som forbedre udseendet af adgangskode-dialogen.

Diese stabile Version verbessert die LDAP-Funktionalität und beinhaltet den aktuellsten SudoDialog, wodurch das Erscheinungsbild und die Nutzerfreundlichkeit des Passwortdialogs verbessert wird.

Αυτή η σταθερή έκδοση βελτιώνει τη λειτουργικότητα του Mugshot για χρήστες LDAP, και περιλαμβάνει το πιο πρόσφατο Παράθυρο Διαλόγου Sudo, βελτιώνοντας την εμφάνιση και τη χρηστικότητα του παραθύρου διαλόγου εισαγωγής συνθηματικού.

Esta versión estable mejora la funcionalidad de Mugshot para los usuarios de LDAP e incluye el último SudoDialog, que mejora la apariencia y la facilidad de uso del diálogo de la contraseña.

Cette version stable améliore les fonctionnalités de Mugshot pour les utilisateurs LDAP et inclut le dernier SudoDialog, qui améliore l'apparence et l'ergonomie de la fenêtre de dialogue du mot de passe.

Questa release stabile migliore le funzionalità di Mugshot per utenti LDAP ed include il più recente SudoDialog, migliorando l'aspetto e l'usabilità della finestra di immissione password.

Ši stabili laida patobulina Mugshot funkcionalumą LDAP naudotojams ir įtraukia vėliausią SudoDialogą, patobulindama slaptažodžio dialogo išvaizdą ir patogumą naudoti.

Deze stabiele versie verbetert de functionaliteit van Mugshot voor LDAP-gebruikers, en bevat de nieuwste SuDoDialog, wat een verbetering is van het uiterlijk en de bruikbaarheid van de wachtwoorddialoog.

Esta versão estável melhora a funcionalidade do Mugshot para utilizadores LDAP, e inclui o mais recente SudoDialog, melhorando a aparência e usabilidade do diálogo da senha.

Esta versão estável melhora a funcionalidade Mugshot para usuários LDAP e inclui a mais recente versão do SudoDialog, melhorando a aparência e usabilidade da caixa de diálogo de senha.

Это стабильный релиз улучшает функциональность Mugshot для пользователей LDAP , и включает в себя последнюю версию SudoDialog , улучшения внешнего вида и диалогового окна ввода пароля.

Táto stabilná verzia vylepšuje funkcionalitu Mugshotu pre užívateľov LDAP, obsahuje nový SudoDialog, zlepšuje vzhľad a použiteľnosť dialógu na zadanie hesla.

Denna stabila version förbättrar Mugshots funktionalitet för LDAP-användare, och inkluderar den senaste SudoDialog, som förbättrar utseende och användning av lösenordsdialogen.

这个稳定的版本改进了 LDAP 用户的 Mugshot 功能,并包含最新的 SudoDialog,改进了密码对话框的外观和可用性。

mugshot-0.4.2/data/metainfo/mugshot.appdata.xml.in0000664000175000017500000000667113517366235024125 0ustar bluesabrebluesabre00000000000000 mugshot.desktop CC0-1.0 GPL-3.0+ Mugshot <_summary>Lightweight user configuration <_p> Mugshot enables users to easily update personal contact information. With Mugshot, users are able to:
    <_li>Set the account photo displayed at login and optionally synchronize this photo with their Pidgin buddy icon <_li>Set account details stored in /etc/passwd (usable with the finger command) and optionally synchronize with their LibreOffice contact information
https://screenshots.bluesabre.org/mugshot/mugshot.png https://screenshots.bluesabre.org/mugshot/mugshot-pidgin-sync.png https://github.com/bluesabre/mugshot https://github.com/bluesabre/mugshot/issues https://github.com/bluesabre/mugshot/wiki https://www.transifex.com/bluesabreorg/mugshot sean@bluesabre.org mugshot mugshot <_p>Mugshot has moved to GitHub! This maintenance release includes numerous translation updates. <_p>This release includes a number of code quality improvements, bug fixes, and translations. Mugshot can now be built and run in a minimal chroot environment. <_p>This stable release adds support for the latest GTK and GStreamer technologies. <_p>This development release restores camera dialog functionality that with recent software versions. <_p>This development release fixes a large number of bugs from previous releases. User properties that cannot be edited are now restricted to administrative users. <_p>This development release upgrades the camera dialog to use Cheese and Clutter to display and capture the camera feed. <_p>This stable release improves Mugshot functionality for LDAP users, and includes the latest SudoDialog, improving the appearance and usability of the password dialog.
mugshot-0.4.2/data/ui/0000775000175000017500000000000013517367015016475 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/data/ui/CameraMugshotDialog.ui0000664000175000017500000001216113517364451022715 0ustar bluesabrebluesabre00000000000000 230 300 False Capture - Mugshot False 230 300 mugshot normal True False vertical 12 True False True True center gtk-cancel True False True True False True 0 gtk-media-record True False False True True False True 1 True gtk-apply True False False True True False True 2 False True end 0 True False vertical True True 1 camera_cancel camera_record camera_apply mugshot-0.4.2/data/ui/MugshotWindow.ui0000664000175000017500000011640513517364451021662 0ustar bluesabrebluesabre00000000000000 True False vertical 12 True False 0 none True False 12 128 128 True False 64 image-loading True False <b>Preview</b> True False True 0 True False 0 none True False 12 True False vertical Center True False False 0 True True False True 0 Left True False False 0 True True crop_center False True 1 Right True False False 0 True True crop_center False True 2 True False <b>Crop</b> True False True 1 True False 16 insert-image True False 16 camera-photo True False 16 document-open True False Select from stock… True False image1 False Capture from camera… True False image2 False Browse… True False image3 False True False gtk-remove True False True True False Mugshot False mugshot True False 12 vertical True False 12 128 128 True True True half 0 image_menu True False 128 avatar-default False False 0 True False vertical 6 True False 6 True False 0 none True False 2 True True name True False <b>First Name</b> True True True 0 True False 0 none True False 2 True True name True False <b>Last Name</b> True True True 1 True False 0 none True False 2 True True 4 4 alpha True False <b>Initials</b> True False True 2 False True 0 True False 6 True True False 0 none True False 2 True True phone True False <b>Home Phone</b> True True True 0 True False 0 none True False 2 True True email True False <b>Email Address</b> True False True 1 False True 1 True False 6 True True False 0 none True False 2 True True phone True False <b>Office Phone</b> True True True 0 True False 0 none True False 2 True True True phone True False <b>Fax</b> True False True 1 False True 2 True True 2 False True 0 True False 12 6 end gtk-help True True True True False True 0 True gtk-cancel True True True True False True 1 gtk-apply True True True True True True False True 2 False True end 2 False 5 Select a photo… GtkFileChooserDialog True mugshot dialog mugshot_window False False box8 False False vertical 2 False end gtk-cancel True False True True False True 0 gtk-apply True True True True True True False True 1 False True end 0 button1 button2 False Select a photo… True center-on-parent 600 480 True mugshot dialog mugshot_window True False 12 vertical 12 True False in True True 0 liststore1 1 True True 0 True False gtk-cancel True True False True False True 0 gtk-ok True False True True True False True 1 False True end 1 mugshot-0.4.2/data/ui/camera_mugshot_dialog.xml0000664000175000017500000000061513517364451023537 0ustar bluesabrebluesabre00000000000000 mugshot-0.4.2/data/ui/mugshot_window.xml0000664000175000017500000000055513517364451022302 0ustar bluesabrebluesabre00000000000000 mugshot-0.4.2/mugshot/0000775000175000017500000000000013517367015016635 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/mugshot/CameraMugshotDialog.py0000664000175000017500000002444713517364451023102 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # Portions of this file are adapted from web_cam_box, # Copyright (C) 2010 Rick Spencer # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . import os import logging from locale import gettext as _ import gi gi.require_version('Gst', '1.0') gi.require_version('Cheese', '3.0') gi.require_version('GtkClutter', '1.0') from gi.repository import Gtk, GObject, Gst # nopep8 from gi.repository import Cheese, Clutter, GtkClutter # nopep8 from mugshot_lib import helpers # nopep8 from mugshot_lib.CameraDialog import CameraDialog # nopep8 logger = logging.getLogger('mugshot') class CameraBox(GtkClutter.Embed): __gsignals__ = { 'photo-saved': (GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_STRING,)), 'gst-state-changed': (GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_INT,)) } def __init__(self, parent): GtkClutter.Embed.__init__(self) self.state = Gst.State.NULL self.parent = parent video_texture = self.setup_ui() self.camera = Cheese.Camera.new(video_texture, "Mugshot", 1280, 720) Cheese.Camera.setup(self.camera, None) Cheese.Camera.play(self.camera) self.state = Gst.State.PLAYING def added(signal, data): if "get_device_node" in dir(data): node = data.get_device_node() self.camera.set_device_by_device_node(node) else: self.camera.set_device(data) self.camera.switch_camera_device() device_monitor = Cheese.CameraDeviceMonitor.new() device_monitor.connect("added", added) device_monitor.coldplug() self.camera.connect("photo-taken", self.on_photo_taken) self.camera.connect("state-flags-changed", self.on_state_flags_changed) self._save_filename = "" def setup_ui(self): viewport = self.get_stage() video_preview = Clutter.Actor.new() video_preview.set_content_gravity(Clutter.ContentGravity.RESIZE_ASPECT) video_preview.set_x_expand(True) video_preview.set_y_expand(True) video_preview.props.min_height = 100.0 video_preview.props.min_width = 100.0 video_texture = video_preview viewport_layout = Clutter.Actor.new() viewport_layout.add_child(video_preview) viewport_layout_manager = Clutter.BinLayout() background_layer = Clutter.Actor.new() background_layer.props.background_color = \ Clutter.Color.from_string("Black")[1] background_layer.props.x = 0 background_layer.props.y = 0 background_layer.props.width = 100 background_layer.props.height = 100 video_preview.props.request_mode = Clutter.RequestMode.HEIGHT_FOR_WIDTH viewport.add_child(background_layer) viewport_layout.set_layout_manager(viewport_layout_manager) viewport.add_child(viewport_layout) viewport.connect("allocation_changed", self.on_stage_resize, viewport_layout, background_layer) return video_texture def on_stage_resize(self, actor, box, flags, layout, background): s_width, s_height = self.get_stage().get_size() v_width = self.camera.props.format.width v_height = self.camera.props.format.height square = min(s_width, s_height) if v_width > v_height: scale = square / v_height v_height = square v_width = v_width * scale else: scale = square / v_width v_height = v_height * scale v_width = square x_adj, y_adj = (s_width - v_width) / 2.0, (s_height - v_height) / 2.0 layout.set_size(v_width, v_height) layout.set_x(x_adj) layout.set_y(y_adj) background.set_size(s_width, s_height) def on_state_flags_changed(self, camera, state): self.state = state self.emit("gst-state-changed", self.state) def play(self): if self.state != Gst.State.PLAYING: Cheese.Camera.play(self.camera) def pause(self): if self.state == Gst.State.PLAYING: Cheese.Camera.play(self.camera) def stop(self): Cheese.Camera.stop(self.camera) def take_photo(self, target_filename): self._save_filename = target_filename return self.camera.take_photo_pixbuf() def on_photo_taken(self, camera, pixbuf): # Get the image dimensions. height = pixbuf.get_height() width = pixbuf.get_width() start_x = 0 start_y = 0 # Calculate a balanced center. if width > height: start_x = (width - height) / 2 width = height else: start_y = (height - width) / 2 height = width # Create a new cropped pixbuf. new_pixbuf = pixbuf.new_subpixbuf(start_x, start_y, width, height) # Overwrite the temporary file with our new cropped image. new_pixbuf.savev(self._save_filename, "png", [], []) self.emit("photo-saved", self._save_filename) class CameraMugshotDialog(CameraDialog): """Camera Capturing Dialog""" __gtype_name__ = "CameraMugshotDialog" __gsignals__ = {'apply': (GObject.SIGNAL_RUN_LAST, GObject.TYPE_NONE, (GObject.TYPE_STRING,)) } def finish_initializing(self, builder): # pylint: disable=E1002 """Set up the camera dialog""" super(CameraMugshotDialog, self).finish_initializing(builder) # Initialize Gst or nothing will work. Gst.init(None) Clutter.init(None) self.camera = CameraBox(self) self.camera.show() self.camera.connect("gst-state-changed", self.on_camera_state_changed) self.camera.connect("photo-saved", self.on_camera_photo_saved) # Pack the video widget into the dialog. vbox = builder.get_object('camera_box') vbox.pack_start(self.camera, True, True, 0) # Essential widgets self.record_button = builder.get_object('camera_record') self.apply_button = builder.get_object('camera_apply') # Store the temporary filename to be used. self.filename = None self.show_all() def on_camera_state_changed(self, widget, state): if state == Gst.State.PLAYING or self.apply_button.get_sensitive(): self.record_button.set_sensitive(True) else: self.record_button.set_sensitive(False) def on_camera_photo_saved(self, widget, filename): self.filename = filename self.apply_button.set_sensitive(True) self.camera.pause() def play(self): self.camera.play() def pause(self): self.camera.pause() def stop(self): self.camera.stop() def take_picture(self, filename): self.camera.take_photo(filename) def on_camera_record_clicked(self, widget): """When the camera record/retry button is clicked: Record: Pause the video, start the capture, enable apply and retry. Retry: Restart the video stream.""" # Remove any previous temporary file. if self.filename and os.path.isfile(self.filename): os.remove(self.filename) # Retry action. if self.apply_button.get_sensitive(): self.record_button.set_label(Gtk.STOCK_MEDIA_RECORD) self.apply_button.set_sensitive(False) self.play() # Record (Capture) action. else: # Create a new temporary file. self.filename = helpers.new_tempfile('camera') # Capture the current image. self.take_picture(self.filename) # Set the record button to retry, and disable it until the capture # finishes. self.record_button.set_label(_("Retry")) self.record_button.set_sensitive(False) def on_camera_apply_clicked(self, widget): """When the camera Apply button is clicked, crop the current photo and emit a signal to let the main application know there is a new file available. Then close the camera dialog.""" self.emit("apply", self.filename) self.hide() def on_camera_cancel_clicked(self, widget): """When the Cancel button is clicked, just hide the dialog.""" self.hide() def on_camera_mugshot_dialog_destroy(self, widget, data=None): """When the application exits, remove the current temporary file and stop the gstreamer element.""" # Clear away the temp file. if self.filename and os.path.isfile(self.filename): os.remove(self.filename) # Clean up the camera before exiting self.camera.stop() def on_camera_mugshot_dialog_hide(self, widget, data=None): """When the dialog is hidden, pause the camera recording.""" self.pause() def on_camera_mugshot_dialog_show(self, widget, data=None): """When the dialog is shown, set the record button to record, disable the apply button, and start the camera.""" self.record_button.set_label(Gtk.STOCK_MEDIA_RECORD) self.apply_button.set_sensitive(False) self.show_all() self.play() def on_camera_mugshot_dialog_delete_event(self, widget, data=None): """Override the dialog delete event to just hide the window.""" self.hide() return True mugshot-0.4.2/mugshot/MugshotWindow.py0000664000175000017500000012774313517364451022044 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . from locale import gettext as _ import logging import os import shutil import subprocess import dbus import pexpect from gi.repository import Gtk, GdkPixbuf, GLib # pylint: disable=E0611 from mugshot_lib import Window, SudoDialog, AccountsServiceAdapter, helpers try: from mugshot.CameraMugshotDialog import CameraMugshotDialog except: pass logger = logging.getLogger('mugshot') username = GLib.get_user_name() home = GLib.get_home_dir() libreoffice_prefs = os.path.join(GLib.get_user_config_dir(), 'libreoffice', '4', 'user', 'registrymodifications.xcu') pidgin_prefs = os.path.join(home, '.purple', 'prefs.xml') faces_dir = '/usr/share/pixmaps/faces/' def which(command): '''Use the system command which to get the absolute path for the given command.''' command = subprocess.Popen(['which', command], stdout=subprocess.PIPE).stdout.read().strip() command = command.decode('utf-8') if command == '': logger.debug('Command "%s" could not be found.' % command) return None return command def has_running_process(name): """Check for a running process, return True if any listings are found.""" command = 'ps -ef | grep " %s" | grep -v "grep" | wc -l' % name n = subprocess.Popen(command, stdout=subprocess.PIPE, shell=True).stdout.read().strip() return int(n) > 0 def has_gstreamer_camerabin_support(): """Return True if gstreamer1.0 camerabin element is available.""" process = subprocess.Popen(["gst-inspect-1.0", "camerabin"], stdout=subprocess.PIPE, stderr=subprocess.PIPE) process.communicate() has_support = process.returncode == 0 if not has_support: element = 'camerabin' plugin = 'gstreamer1.0-plugins-good' logger.debug('%s element unavailable. ' 'Do you have %s installed?' % (element, plugin)) return has_support def has_gstreamer_camerasrc_support(): """Return True if gstreamer1.0 v4l2src element is available.""" process = subprocess.Popen(["gst-inspect-1.0", "v4l2src"], stdout=subprocess.PIPE, stderr=subprocess.PIPE) process.communicate() has_support = process.returncode == 0 if not has_support: element = 'v4l2src' plugin = 'gstreamer1.0-plugins-good' logger.debug('%s element unavailable. ' 'Do you have %s installed?' % (element, plugin)) return has_support def has_camera_libraries(): """Return True if it is possible to display the camera dialog.""" try: from gi.repository import Cheese, Clutter, GtkClutter # pylint: disable=W0612 except: return False return True def get_camera_installed(): """Return True if /dev/video0 exists.""" if not os.path.exists('/dev/video0'): logger.debug('Camera not detected at /dev/video0') return False return True def get_has_camera_support(): """Return True if cameras are fully supported by this application.""" if not get_camera_installed(): return False if not which('gst-inspect-1.0'): return False if not has_gstreamer_camerabin_support(): return False if not has_gstreamer_camerasrc_support(): return False if not has_camera_libraries(): return False return True def detach_cb(menu, widget): '''Detach a widget from its attached widget.''' menu.detach() def get_entry_value(entry_widget): """Get the value from one of the Mugshot entries.""" # Get the text from an entry, changing none to '' value = entry_widget.get_text().strip() if value.lower() == 'none': value = '' return value def get_confirmation_dialog(parent, primary_message, secondary_message, icon_name=None): """Display a confirmation (yes/no) dialog configured with primary and secondary messages, as well as a custom icon if requested.""" dialog = Gtk.MessageDialog(transient_for=parent, flags=0, message_type=Gtk.MessageType.QUESTION, buttons=Gtk.ButtonsType.YES_NO, text=primary_message) dialog.format_secondary_text(secondary_message) if icon_name: image = Gtk.Image.new_from_icon_name(icon_name, Gtk.IconSize.DIALOG) dialog.set_image(image) dialog.show_all() response = dialog.run() dialog.destroy() return response == Gtk.ResponseType.YES # See mugshot_lib.Window.py for more details about how this class works class MugshotWindow(Window): """Mugshot GtkWindow""" __gtype_name__ = "MugshotWindow" def finish_initializing(self, builder): # pylint: disable=E1002 """Set up the main window""" super(MugshotWindow, self).finish_initializing(builder) self.set_wmclass("Mugshot", "Mugshot") # User Image widgets self.image_button = builder.get_object('image_button') self.user_image = builder.get_object('user_image') self.image_menu = builder.get_object('image_menu') self.image_from_camera = builder.get_object('image_from_camera') self.image_from_stock = builder.get_object('image_from_stock') self.image_from_stock.set_visible(os.path.exists(faces_dir) and len(os.listdir(faces_dir)) > 0) self.menuitem1 = builder.get_object('menuitem1') self.image_remove = builder.get_object('image_remove') if get_has_camera_support(): self.CameraDialog = CameraMugshotDialog self.image_from_camera.set_visible(True) else: self.image_from_camera.set_visible(False) # Entry widgets (chfn) self.first_name_entry = builder.get_object('first_name') self.last_name_entry = builder.get_object('last_name') self.initials_entry = builder.get_object('initials') self.office_phone_entry = builder.get_object('office_phone') self.home_phone_entry = builder.get_object('home_phone') self.email_entry = builder.get_object('email') self.fax_entry = builder.get_object('fax') # Stock photo browser self.stock_browser = builder.get_object('stock_browser') self.iconview = builder.get_object('stock_iconview') # File Chooser Dialog self.chooser = builder.get_object('filechooserdialog') self.crop_center = builder.get_object('crop_center') self.crop_left = builder.get_object('crop_left') self.crop_right = builder.get_object('crop_right') self.file_chooser_preview = builder.get_object('file_chooser_preview') # Add a filter for only image files. image_filter = Gtk.FileFilter() image_filter.set_name('Images') image_filter.add_mime_type('image/*') self.chooser.add_filter(image_filter) self.tmpfile = None self.accounts_service = \ AccountsServiceAdapter.MugshotAccountsServiceAdapter(username) # Users without sudo rights cannot change their name. if not self.accounts_service.available(): self.set_name_editable(SudoDialog.check_dependencies(['chfn'])) self.set_phone_editable(SudoDialog.check_dependencies(['chfn'])) # Populate all of the widgets. self.init_user_details() def set_name_editable(self, editable): """Set name fields editable.""" self.first_name_entry.set_sensitive(editable) self.last_name_entry.set_sensitive(editable) self.initials_entry.set_sensitive(editable) def set_phone_editable(self, editable): self.home_phone_entry.set_sensitive(editable) self.office_phone_entry.set_sensitive(editable) def init_user_details(self): """Initialize the user details entries and variables.""" # Check for .face and set profile image. logger.debug('Checking for ~/.face profile image') face = os.path.join(home, '.face') logger.debug('Checking AccountsService for profile image') if not self.accounts_service.available(): # AccountsService may not be supported or desired. logger.debug("AccountsService is not supported.") self.updated_image = face self.set_user_image(face) # If it is supported, process and compare to ~/.face else: image = self.accounts_service.get_icon_file() logger.debug('Found profile image: %s' % str(image)) if os.path.isfile(face): try: if os.path.samefile(image, face): self.updated_image = face else: self.updated_image = None except FileNotFoundError: self.updated_image = None self.set_user_image(face) elif os.path.isfile(image): self.updated_image = image self.set_user_image(image) else: self.updated_image = None self.set_user_image(None) user_details = self.get_user_details() # Set the class variables self.first_name = user_details['first_name'] self.last_name = user_details['last_name'] self.initials = user_details['initials'] self.home_phone = user_details['home_phone'] self.office_phone = user_details['office_phone'] self.email = user_details['email'] self.fax = user_details['fax'] # Populate the GtkEntries. logger.debug('Populating entries') self.first_name_entry.set_text(self.first_name) self.last_name_entry.set_text(self.last_name) self.initials_entry.set_text(self.initials) self.office_phone_entry.set_text(self.office_phone) self.home_phone_entry.set_text(self.home_phone) self.email_entry.set_text(self.email) self.fax_entry.set_text(self.fax) # = Mugshot Window ====================================================== # def set_user_image(self, filename=None): """Scale and set the user profile image.""" logger.debug("Setting user profile image to %s" % str(filename)) if filename and os.path.exists(filename): try: pixbuf = GdkPixbuf.Pixbuf.new_from_file(filename) scaled = pixbuf.scale_simple(128, 128, GdkPixbuf.InterpType.HYPER) self.user_image.set_from_pixbuf(scaled) # Show "Remove" menu item. self.menuitem1.set_visible(True) self.image_remove.set_visible(True) return except GLib.Error: # pylint: disable=E0712 pass self.user_image.set_from_icon_name('avatar-default', 128) # Hide "Remove" menu item. self.menuitem1.set_visible(False) self.image_remove.set_visible(False) def suggest_initials(self, first_name, last_name): """Generate initials from first and last name.""" try: initials = first_name[0] + last_name[0] except: if first_name: initials = first_name[0] else: initials = '' return initials def filter_numbers(self, entry, *args): """Allow only numbers and + in phone entry fields.""" text = entry.get_text().strip() entry.set_text(''.join([i for i in text if i in '+0123456789'])) def on_apply_button_clicked(self, widget): """When the window Apply button is clicked, commit any relevant changes.""" logger.debug('Applying changes...') if self.get_chfn_details_updated(): success, response = self.save_chfn_details() if not success: # Password was incorrect, complain. if response in [Gtk.ResponseType.NONE, Gtk.ResponseType.CANCEL, Gtk.ResponseType.DELETE_EVENT]: msg_type = Gtk.MessageType.WARNING primary = _("Authentication cancelled.") elif response == Gtk.ResponseType.REJECT: msg_type = Gtk.MessageType.WARNING primary = _("Authentication failed.") else: msg_type = Gtk.MessageType.ERROR primary = _("An error occurred when saving changes.") secondary = _("User details were not updated.") dialog = Gtk.MessageDialog(transient_for=self, flags=0, message_type=msg_type, buttons=Gtk.ButtonsType.OK, text=primary) dialog.format_secondary_text(secondary) dialog.run() dialog.destroy() return if self.get_as_details_updated(): self.save_as_details() if self.get_libreoffice_details_updated(): self.set_libreoffice_data() if self.updated_image is not None: self.save_image() self.save_gsettings() self.destroy() def save_gsettings(self): """Save details to dconf (the ones not tracked by /etc/passwd)""" logger.debug('Saving details to dconf: /apps/mugshot') self.settings.set_string('initials', get_entry_value(self.initials_entry)) self.settings.set_string('email', get_entry_value(self.email_entry)) self.settings.set_string('fax', get_entry_value(self.fax_entry)) def entry_focus_next(self, widget): """Focus the next available entry when pressing Enter.""" logger.debug('Entry activated, focusing next widget.') vbox = widget.get_parent().get_parent().get_parent().get_parent() vbox.child_focus(Gtk.DirectionType.TAB_FORWARD) def initials_entry_focused(self, widget): """Paste initials into empty field.""" logger.debug('Initials field focused.') first_name = get_entry_value(self.first_name_entry) last_name = get_entry_value(self.last_name_entry) if get_entry_value(self.initials_entry) == '': self.initials_entry.set_text(self.suggest_initials(first_name, last_name)) def on_cancel_button_clicked(self, widget): """When the window cancel button is clicked, close the program.""" logger.debug('Cancel clicked, goodbye.') self.destroy() def on_image_remove_activate(self, widget): """Remove the user's profile image.""" self.updated_image = "" self.set_user_image(None) def on_camera_dialog_apply(self, widget, data=None): """Commit changes when apply is clicked.""" self.updated_image = data self.set_user_image(data) def save_image(self): """Copy the updated image filename to ~/.face""" # Check if the image has been updated. if self.updated_image is None: logger.debug('Photo not updated, not saving changes.') return False if not os.path.isfile(self.updated_image): self.updated_image = "" face = os.path.join(home, '.face') if os.path.normpath(face) != os.path.normpath(self.updated_image): # If the .face file already exists, remove it first. logger.debug('Photo updated, saving ~/.face profile image.') if os.path.isfile(face): os.remove(face) # Copy the new file to ~/.face if os.path.isfile(self.updated_image): shutil.copyfile(self.updated_image, face) # Update AccountsService profile image if self.accounts_service.available(): logger.debug( 'Photo updated, saving AccountsService profile image.') self.accounts_service.set_icon_file(self.updated_image) # Update Pidgin buddy icon self.set_pidgin_buddyicon(self.updated_image) self.updated_image = None return True def set_pidgin_buddyicon(self, filename=None): """Sets the pidgin buddyicon to filename (usually ~/.face). If pidgin is running, use the dbus interface, otherwise directly modify the XML file.""" if not os.path.exists(pidgin_prefs): logger.debug('Pidgin not installed or never opened, not updating.') return logger.debug('Prompting user to update pidgin buddy icon') primary = _("Update Pidgin buddy icon?") secondary = _("Would you also like to update your Pidgin buddy icon?") update_pidgin = get_confirmation_dialog(self, primary, secondary, 'pidgin') if update_pidgin: if has_running_process('pidgin'): self.set_pidgin_buddyicon_dbus(filename) else: self.set_pidgin_buddyicon_xml(filename) else: logger.debug('Reject: Not updating pidgin buddy icon') def set_pidgin_buddyicon_dbus(self, filename=None): """Set the pidgin buddy icon via dbus.""" logger.debug('Updating pidgin buddy icon via dbus') bus = dbus.SessionBus() obj = bus.get_object("im.pidgin.purple.PurpleService", "/im/pidgin/purple/PurpleObject") purple = dbus.Interface(obj, "im.pidgin.purple.PurpleInterface") # To make the change instantly visible, set the icon to none first. purple.PurplePrefsSetPath('/pidgin/accounts/buddyicon', '') if filename: purple.PurplePrefsSetPath('/pidgin/accounts/buddyicon', filename) def set_pidgin_buddyicon_xml(self, filename=None): """Set the buddyicon used by pidgin to filename (via the xml file).""" # This is hacky, but a working implementation for now... logger.debug('Updating pidgin buddy icon via xml') prefs_file = pidgin_prefs tmp_buffer = [] if os.path.isfile(prefs_file): for line in open(prefs_file): if '\n' % filename else: new = new + 'value=\'\'/>\n' tmp_buffer.append(new) else: tmp_buffer.append(line) write_prefs = open(prefs_file, 'w') for line in tmp_buffer: write_prefs.write(line) write_prefs.close() # = chfn functions ============================================ # def get_as_details_updated(self): if not self.accounts_service.available(): return False if self.first_name != self.first_name_entry.get_text().strip(): return True if self.last_name != self.last_name_entry.get_text().strip(): return True if self.email != self.email_entry.get_text().strip(): return True return False def save_as_details(self): if not self.accounts_service.available(): return True first_name = get_entry_value(self.first_name_entry) last_name = get_entry_value(self.last_name_entry) full_name = "%s %s" % (first_name, last_name) full_name = full_name.strip() email = get_entry_value(self.email_entry) self.accounts_service.set_real_name(full_name) self.accounts_service.set_email(email) return True def get_chfn_details_updated(self): """Return True if chfn-related details have been modified.""" logger.debug('Checking if chfn details have been modified.') modified = False if not self.accounts_service.available(): if self.first_name != self.first_name_entry.get_text().strip(): modified = True if self.last_name != self.last_name_entry.get_text().strip(): modified = True if self.home_phone != self.home_phone_entry.get_text().strip(): modified = True if self.office_phone != self.office_phone_entry.get_text().strip(): modified = True if modified: logger.debug('chfn details have been modified.') return True logger.debug('chfn details have NOT been modified.') return False def process_terminal_password(self, command, password): """Handle password prompts from the interactive chfn commands.""" # Force the C language for guaranteed english strings in the script. logger.debug('Executing: %s' % command) child = SudoDialog.env_spawn(command, [], 5) child.write_to_stdout = True try: child.expect([".*ssword.*", pexpect.EOF]) child.sendline(password) child.expect([pexpect.EOF]) except pexpect.TIMEOUT: logger.warning('Timeout reached, password was likely incorrect.') child.close(True) return child.exitstatus == 0 def save_chfn_details(self): """Commit changes to chfn-related details. For full name, changes must be performed as root. Other changes are done with the user password. Return TRUE if successful.""" success = True # Get the password for sudo sudo_dialog = SudoDialog.SudoDialog( icon=None, name=_("Mugshot"), retries=3) sudo_dialog.format_primary_text(_("Enter your password to change user " "details.")) sudo_dialog.format_secondary_text(_("This is a security measure to " "prevent unwanted updates\n" "to your personal information.")) response = sudo_dialog.run() sudo_dialog.hide() password = sudo_dialog.get_password() sudo_dialog.destroy() if not password: return (False, response) sudo = which('sudo') chfn = which('chfn') # Get each of the updated values. first_name = get_entry_value(self.first_name_entry) last_name = get_entry_value(self.last_name_entry) full_name = "%s %s" % (first_name, last_name) full_name = full_name.strip() office_phone = get_entry_value(self.office_phone_entry) if office_phone == '': office_phone = 'none' home_phone = get_entry_value(self.home_phone_entry) if home_phone == '': home_phone = 'none' # Full name can only be modified by root. Try using sudo to modify. if not self.accounts_service.available(): if SudoDialog.check_dependencies(['chfn']): logger.debug('Updating Full Name...') command = "%s %s -f \"%s\" %s" % (sudo, chfn, full_name, username) if self.process_terminal_password(command, password): self.first_name = first_name self.last_name = last_name else: success = False logger.debug('Updating Home Phone...') command = "%s -h \"%s\" %s" % (chfn, home_phone, username) if self.process_terminal_password(command, password): self.home_phone = home_phone else: success = False logger.debug('Updating Office Phone...') # chfn 2.29 uses "-p" as parameter for changing the office-phone (LP: #1699285) p_command = "%s -p \"%s\" %s" % (chfn, office_phone, username) # other (newer, older?) use "-w" w_command = "%s -w \"%s\" %s" % (chfn, office_phone, username) if self.process_terminal_password(p_command, password) or \ self.process_terminal_password(w_command, password): self.office_phone = office_phone else: success = False return (success, response) # = LibreOffice ========================================================= # def get_libreoffice_details_updated(self): """Return True if LibreOffice settings need to be updated.""" # Return False if there is no preferences file. if not os.path.isfile(libreoffice_prefs): logger.debug('LibreOffice is not installed or has not been opened.' ' Not updating.') return False # Compare the current entries to the existing LibreOffice data. data = self.get_libreoffice_data() if data['first_name'] != get_entry_value(self.first_name_entry): return True if data['last_name'] != get_entry_value(self.last_name_entry): return True if data['initials'] != get_entry_value(self.initials_entry): return True if data['email'] != get_entry_value(self.email_entry): return True if data['home_phone'] != get_entry_value(self.home_phone_entry): return True if data['office_phone'] != get_entry_value(self.office_phone_entry): return True if data['fax'] != get_entry_value(self.fax_entry): return True logger.debug('LibreOffice details do not need to be updated.') return False def get_user_details(self): """Use the various methods to get the most up-to-date version of the user details.""" # Start with LibreOffice, as users may have configured that first. data = self.get_libreoffice_data() # Prefer AccountsService, GLib, then passwd as_data = self.get_accounts_service_data() gl_data = self.get_glib_data() pwd_data = self.get_passwd_data() for dataset in [as_data, gl_data, pwd_data]: if dataset is None: continue if len(dataset['first_name']) > 0: data['first_name'] = dataset['first_name'] data['last_name'] = dataset['last_name'] data['initials'] = dataset['initials'] break for dataset in [as_data, gl_data, pwd_data]: if dataset is None: continue for key in ['home_phone', 'office_phone', 'email', 'fax']: if len(data[key]) == 0: data[key] = dataset[key] # Then get data from dconf if len(self.settings['initials']) > 0: data['initials'] = self.settings['initials'] if len(data['email']) == 0: data['email'] = self.settings['email'] if len(data['fax']) == 0: data['fax'] = self.settings['fax'] # Return all of the finalized information. return data def split_name(self, name): parts = name.split() initials = "" first = "" last = "" if len(' '.join(parts)) > 0: first = parts[0] if len(parts) > 1: last = ' '.join(parts[1:]) for part in parts: if len(part) > 0: initials += part[0] return { "first": first, "last": last, "initials": initials } def get_accounts_service_data(self): if not self.accounts_service.available(): return None name = self.accounts_service.get_real_name() if name: name = self.split_name(name) else: name = {'first': '', 'last': '', 'initials': ''} email = self.accounts_service.get_email() if not email: email = '' data = {'first_name': name['first'], 'last_name': name['last'], 'home_phone': '', 'office_phone': '', 'initials': name['initials'], 'email': email, 'fax': ''} return data def get_glib_data(self): name = GLib.get_real_name() name = self.split_name(name) data = {'first_name': name['first'], 'last_name': name['last'], 'home_phone': '', 'office_phone': '', 'initials': name['initials'], 'email': '', 'fax': ''} return data def get_passwd_data(self): """Get user details from passwd""" # Use getent for current user's details. try: line = subprocess.check_output(['getent', 'passwd', username]) if isinstance(line, bytes): line = line.decode('utf-8') line = line.strip() logger.debug('Found details: %s' % line.strip()) details = line.split(':')[4].split(',') while len(details) < 4: details.append("") # Extract the user details name = details[0] office_phone = details[2] home_phone = details[3] except subprocess.CalledProcessError: logger.warning("User %s not found in /etc/passwd. " "Mugshot may not function correctly." % username) name = "" office_phone = "" home_phone = "" name = self.split_name(name) # If the variables are defined as 'none', use blank for cleanliness. if home_phone == 'none': home_phone = '' if office_phone == 'none': office_phone = '' # Pack the data data = {'first_name': name['first'], 'last_name': name['last'], 'home_phone': home_phone, 'office_phone': office_phone, 'initials': name['initials'], 'email': '', 'fax': ''} return data def get_libreoffice_data(self): """Get each of the preferences from the LibreOffice registymodifications preferences file. Return a dict with the details.""" prefs_file = libreoffice_prefs data = {'first_name': '', 'last_name': '', 'initials': '', 'email': '', 'home_phone': '', 'office_phone': '', 'fax': ''} if os.path.isfile(prefs_file): logger.debug('Getting settings from %s' % prefs_file) # Check for file access try: prefs = open(prefs_file, 'r') prefs.close() except PermissionError: logger.debug('Reject: Cannot open file.') return data for line in open(prefs_file): if "UserProfile/Data" in line: try: value = line.split('')[1].split('')[0] except IndexError: continue value = value.strip() # First Name if 'name="givenname"' in line: data['first_name'] = value # Last Name elif 'name="sn"' in line: data['last_name'] = value # Initials elif 'name="initials"' in line: data['initials'] = value # Email elif 'name="mail"' in line: data['email'] = value # Home Phone elif 'name="homephone"' in line: data['home_phone'] = value # Office Phone elif 'name="telephonenumber"' in line: data['office_phone'] = value # Fax Number elif 'name="facsimiletelephonenumber"' in line: data['fax'] = value else: pass return data def set_libreoffice_data(self): """Update the LibreOffice registymodifications preferences file.""" prefs_file = libreoffice_prefs if os.path.isfile(prefs_file): logger.debug('Prompting user to update LibreOffice details.') update_libreoffice = \ get_confirmation_dialog(self, _("Update LibreOffice user details?"), _("Would you also like to update your " "user details in LibreOffice?"), 'libreoffice-startcenter') if update_libreoffice: logger.debug('Confirm: Updating details.') first_name = get_entry_value(self.first_name_entry) first_name_updated = False last_name = get_entry_value(self.last_name_entry) last_name_updated = False initials = get_entry_value(self.initials_entry) initials_updated = False email = get_entry_value(self.email_entry) email_updated = False home_phone = get_entry_value(self.home_phone_entry) home_phone_updated = False office_phone = get_entry_value(self.office_phone_entry) office_phone_updated = False fax = get_entry_value(self.fax_entry) fax_updated = False tmp_buffer = [] # Check for file access try: prefs = open(prefs_file, 'a') prefs.close() except PermissionError: logger.debug('Reject: Not updating.') return for line in open(prefs_file): new = None if "UserProfile/Data" in line: new = line.split('')[0] # First Name if 'name="givenname"' in line: new = new + '%s\n' % \ first_name first_name_updated = True # Last Name elif 'name="sn"' in line: new = new + '%s\n' % \ last_name last_name_updated = True # Initials elif 'name="initials"' in line: new = new + '%s\n' % \ initials initials_updated = True # Email elif 'name="mail"' in line: new = new + '%s\n' % \ email email_updated = True # Home Phone elif 'name="homephone"' in line: new = new + '%s\n' % \ home_phone home_phone_updated = True # Office Phone elif 'name="telephonenumber"' in line: new = new + '%s\n' % \ office_phone office_phone_updated = True # Fax Number elif 'name="facsimiletelephonenumber"' in line: new = new + '%s\n' % \ fax fax_updated = True else: new = line tmp_buffer.append(new) elif '' in line: pass else: tmp_buffer.append(line) open_prefs = open(prefs_file, 'w') for line in tmp_buffer: open_prefs.write(line) if not first_name_updated: string = \ '' '' '%s\n' % first_name open_prefs.write(string) if not last_name_updated: string = \ '' '' '%s\n' % last_name open_prefs.write(string) if not initials_updated: string = \ '' '' '%s\n' % initials open_prefs.write(string) if not email_updated: string = \ '' '' '%s\n' % email open_prefs.write(string) if not home_phone_updated: string = \ '' '' '%s\n' % home_phone open_prefs.write(string) if not office_phone_updated: string = \ '' '' '%s\n' % office_phone open_prefs.write(string) if not fax_updated: string = \ '' '' '%s\n' % fax open_prefs.write(string) open_prefs.write('') open_prefs.close() else: logger.debug('Reject: Not updating.') # = Stock Browser ======================================================= # def on_image_from_stock_activate(self, widget): """When the 'Select image from stock' menu item is clicked, load and display the stock photo browser.""" self.load_stock_browser() self.stock_browser.show_all() def load_stock_browser(self): """Load the stock photo browser.""" # Check if the photos have already been loaded. model = self.iconview.get_model() if len(model) != 0: logger.debug("Stock browser already loaded.") return # If they have not, load each photo from faces_dir. logger.debug("Loading stock browser photos.") for filename in os.listdir(faces_dir): full_path = os.path.join(faces_dir, filename) if os.path.isfile(full_path): pixbuf = GdkPixbuf.Pixbuf.new_from_file(full_path) scaled = pixbuf.scale_simple(90, 90, GdkPixbuf.InterpType.HYPER) model.append([full_path, scaled]) def on_stock_iconview_selection_changed(self, widget): """Enable stock submission only when an item is selected.""" selected_items = self.iconview.get_selected_items() is_sensitive = len(selected_items) > 0 self.builder.get_object('stock_ok').set_sensitive(is_sensitive) def on_stock_browser_delete_event(self, widget, event): """Hide the stock browser instead of deleting it.""" widget.hide() return True def on_stock_cancel_clicked(self, widget): """Hide the stock browser when Cancel is clicked.""" self.stock_browser.hide() def on_stock_ok_clicked(self, widget): """When the stock browser OK button is clicked, get the currently selected photo and set it to the user profile image.""" selected_items = self.iconview.get_selected_items() if len(selected_items) != 0: # Get the filename from the stock browser iconview. path = int(selected_items[0].to_string()) filename = self.iconview.get_model()[path][0] logger.debug("Selected %s" % filename) # Update variables and widgets, then hide. self.set_user_image(filename) self.updated_image = filename self.stock_browser.hide() def on_stock_iconview_item_activated(self, widget, path): """Allow selecting a stock photo with Enter.""" self.on_stock_ok_clicked(widget) # = Image Browser ======================================================= # def on_image_from_browse_activate(self, widget): """Browse for a user profile image.""" # Run the dialog, grab the filename if confirmed, then hide the dialog. response = self.chooser.run() if response == Gtk.ResponseType.APPLY: # Update the user image, store the path for committing later. self.updated_image = helpers.new_tempfile('browse') self.filechooser_preview_pixbuf.savev(self.updated_image, "png", [], []) logger.debug("Selected %s" % self.updated_image) self.set_user_image(self.updated_image) self.chooser.hide() def on_filechooserdialog_update_preview(self, widget): """Update the preview image used in the file chooser.""" filename = widget.get_filename() if not filename: self.file_chooser_preview.set_from_icon_name('folder', 128) return if not os.path.isfile(filename): self.file_chooser_preview.set_from_icon_name('folder', 128) return filechooser_pixbuf = GdkPixbuf.Pixbuf.new_from_file(filename) # Get the image dimensions. height = filechooser_pixbuf.get_height() width = filechooser_pixbuf.get_width() start_x = 0 start_y = 0 if self.crop_center.get_active(): # Calculate a balanced center. if width > height: start_x = (width - height) / 2 width = height else: start_y = (height - width) / 2 height = width elif self.crop_left.get_active(): start_x = 0 if width > height: width = height else: start_y = (height - width) / 2 height = width elif self.crop_right.get_active(): if width > height: start_x = width - height width = height else: start_y = (height - width) / 2 height = width # Create a new cropped pixbuf. self.filechooser_preview_pixbuf = \ filechooser_pixbuf.new_subpixbuf(start_x, start_y, width, height) scaled = self.filechooser_preview_pixbuf.scale_simple( 128, 128, GdkPixbuf.InterpType.HYPER) self.file_chooser_preview.set_from_pixbuf(scaled) def on_crop_changed(self, widget, data=None): """Update the preview image when crop style is modified.""" if widget.get_active(): self.on_filechooserdialog_update_preview(self.chooser) mugshot-0.4.2/mugshot/__init__.py0000664000175000017500000000342713517364451020755 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . import argparse import signal from locale import gettext as _ from gi.repository import Gtk # pylint: disable=E0611 from mugshot import MugshotWindow from mugshot_lib import set_up_logging, get_version, helpers def parse_options(): """Support for command line options""" parser = argparse.ArgumentParser(description="Mugshot %s" % get_version()) parser.add_argument( "-v", "--verbose", action="count", dest="verbose", help=_("Show debug messages (-vv debugs mugshot_lib also)")) options = parser.parse_args() set_up_logging(options) def main(): 'constructor for your class instances' parse_options() # Run the application. window = MugshotWindow.MugshotWindow() window.show() # Allow application shutdown with Ctrl-C in terminal signal.signal(signal.SIGINT, signal.SIG_DFL) Gtk.main() # Cleanup temporary files helpers.clear_tempfiles() mugshot-0.4.2/mugshot.10000664000175000017500000000167113517364451016725 0ustar bluesabrebluesabre00000000000000.de URL \\$2 \(laURL: \\$1 \(ra\\$3 .. .if \n[.g] .mso www.tmac .TH MUGSHOT "1" "August 2018" "mugshot 0.4" "User Commands" .SH NAME mugshot \- lightweight user configuration utility .SH DESCRIPTION Mugshot is a lightweight user configuration utility. Mugshot allows you to easily set profile image and user details for your user profile and any supported applications. .SH SYNOPSIS .B mugshot [\fIoptions\fR] .SH OPTIONS .TP \fB\-\-version\fR show program's version number and exit .TP \fB\-h\fR, \fB\-\-help\fR show this help message and exit .TP \fB\-v\fR, \fB\-\-verbose\fR Show debug messages (\fB\-vv\fR debugs mugshot_lib also) .SH "SEE ALSO" The full documentation for .B mugshot is maintained online at .URL "https://github.com/bluesabre/mugshot/wiki" "the authors documentation portal" "." .SH BUGS Please report bugs at .URL "https://github.com/bluesabre/mugshot/issues" "the Mugshot Bugs page" "." .SH AUTHOR Sean Davis (sean@bluesabre.org) mugshot-0.4.2/mugshot.desktop.in0000664000175000017500000000051413517364451020636 0ustar bluesabrebluesabre00000000000000[Desktop Entry] _Name=About Me _Comment=Configure your profile image and contact details Categories=GNOME;GTK;Settings;X-GNOME-Settings-Panel;X-GNOME-PersonalSettings;DesktopSettings;X-XFCE;X-XFCE-SettingsDialog;X-XFCE-PersonalSettings; Keywords=Configuration;Profile;User; Exec=mugshot Icon=mugshot Terminal=false Type=Application mugshot-0.4.2/mugshot_lib/0000775000175000017500000000000013517367015017463 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/mugshot_lib/AccountsServiceAdapter.py0000664000175000017500000001275513517364451024451 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . from gi.repository import Gio, GLib class MugshotAccountsServiceAdapter: _properties = { "AutomaticLogin": bool, "Locked": bool, "AccountType": int, "PasswordMode": int, "SystemAccount": bool, "Email": str, "HomeDirectory": str, "IconFile": str, "Language": str, "Location": str, "RealName": str, "Shell": str, "UserName": str, "XSession": str, "Uid": int, "LoginFrequency": int, "PasswordHint": str, "Domain": str, "CredentialLifetime": int } def __init__(self, username): self._set_username(username) self._available = False try: self._get_path() self._available = True except: pass def available(self): return self._available def _set_username(self, username): self._username = username def _get_username(self): return self._username def _get_path(self): return self._find_user_by_name(self._username) def _get_variant(self, vtype, value): if vtype == bool: variant = "(b)" elif vtype == int: variant = "(i)" elif vtype == str: variant = "(s)" variant = GLib.Variant(variant, (value,)) return variant def _set_property(self, key, value): if key not in list(self._properties.keys()): return False method = "Set" + key variant = self._get_variant(self._properties[key], value) try: bus = self._get_bus() bus.call_sync('org.freedesktop.Accounts', self._get_path(), 'org.freedesktop.Accounts.User', method, variant, GLib.VariantType.new('()'), Gio.DBusCallFlags.NONE, -1, None) return True except: return False def _get_all(self, ): try: bus = self._get_bus() variant = GLib.Variant('(s)', ('org.freedesktop.Accounts.User',)) result = bus.call_sync('org.freedesktop.Accounts', self._get_path(), 'org.freedesktop.DBus.Properties', 'GetAll', variant, GLib.VariantType.new('(a{sv})'), Gio.DBusCallFlags.NONE, -1, None) (props,) = result.unpack() return props except: return None def _get_property(self, key): if key not in list(self._properties.keys()): return False props = self._get_all() if props is not None: return props[key] return False def _get_bus(self): try: bus = Gio.bus_get_sync(Gio.BusType.SYSTEM, None) return bus except: return None def _find_user_by_name(self, username): try: bus = self._get_bus() result = bus.call_sync('org.freedesktop.Accounts', '/org/freedesktop/Accounts', 'org.freedesktop.Accounts', 'FindUserByName', GLib.Variant('(s)', (username,)), GLib.VariantType.new('(o)'), Gio.DBusCallFlags.NONE, -1, None) (path,) = result.unpack() return path except: return None def get_email(self): return self._get_property("Email") def set_email(self, email): self._set_property("Email", email) def get_location(self): return self._get_property("Location") def set_location(self, location): self._set_property("Location", location) def get_icon_file(self): """Get user profile image using AccountsService.""" return self._get_property("IconFile") def set_icon_file(self, filename): """Set user profile image using AccountsService.""" self._set_property("IconFile", filename) def get_real_name(self): return self._get_property("RealName") def set_real_name(self, name): """Set user profile image using AccountsService.""" self._set_property("RealName", name) mugshot-0.4.2/mugshot_lib/Builder.py0000664000175000017500000002675713517364451021445 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . '''Enhances builder connections, provides object to access glade objects''' import inspect import functools import logging from xml.etree.cElementTree import ElementTree import gi gi.require_version('Gtk', '3.0') from gi.repository import GObject, Gtk logger = logging.getLogger('mugshot_lib') # this module is big so uses some conventional prefixes and postfixes # *s list, except self.widgets is a dictionary # *_dict dictionary # *name string # ele_* element in a ElementTree # pylint: disable=R0904 # the many public methods is a feature of Gtk.Builder class Builder(Gtk.Builder): ''' extra features connects glade defined handler to default_handler if necessary auto connects widget to handler with matching name or alias auto connects several widgets to a handler via multiple aliases allow handlers to lookup widget name logs every connection made, and any on_* not made ''' def __init__(self): """Initialize the builder.""" Gtk.Builder.__init__(self) self.widgets = {} self.glade_handler_dict = {} self.connections = [] self._reverse_widget_dict = {} # pylint: disable=R0201 # this is a method so that a subclass of Builder can redefine it def default_handler(self, handler_name, filename, *args, **kwargs): '''helps the apprentice guru glade defined handlers that do not exist come here instead. An apprentice guru might wonder which signal does what he wants, now he can define any likely candidates in glade and notice which ones get triggered when he plays with the project. this method does not appear in Gtk.Builder''' logger.debug('''tried to call non-existent function:%s() expected in %s args:%s kwargs:%s''', handler_name, filename, args, kwargs) # pylint: enable=R0201 def get_name(self, widget): ''' allows a handler to get the name (id) of a widget this method does not appear in Gtk.Builder''' return self._reverse_widget_dict.get(widget) def add_from_file(self, filename): '''parses xml file and stores wanted details''' Gtk.Builder.add_from_file(self, filename) # extract data for the extra interfaces tree = ElementTree() tree.parse(filename) ele_widgets = tree.getiterator("object") for ele_widget in ele_widgets: name = ele_widget.attrib['id'] widget = self.get_object(name) # populate indexes - a dictionary of widgets self.widgets[name] = widget # populate a reversed dictionary self._reverse_widget_dict[widget] = name # populate connections list ele_signals = ele_widget.findall("signal") connections = [ (name, ele_signal.attrib['name'], ele_signal.attrib['handler']) for ele_signal in ele_signals] if connections: self.connections.extend(connections) ele_signals = tree.getiterator("signal") for ele_signal in ele_signals: self.glade_handler_dict.update( {ele_signal.attrib["handler"]: None}) def connect_signals(self, callback_obj): '''connect the handlers defined in glade reports successful and failed connections and logs call to missing handlers''' filename = inspect.getfile(callback_obj.__class__) callback_handler_dict = dict_from_callback_obj(callback_obj) connection_dict = {} connection_dict.update(self.glade_handler_dict) connection_dict.update(callback_handler_dict) for item in list(connection_dict.items()): if item[1] is None: # the handler is missing so reroute to default_handler handler = functools.partial( self.default_handler, item[0], filename) connection_dict[item[0]] = handler # replace the run time warning logger.warning("expected handler '%s' in %s", item[0], filename) # connect glade define handlers Gtk.Builder.connect_signals(self, connection_dict) # let's tell the user how we applied the glade design for connection in self.connections: widget_name, signal_name, handler_name = connection logger.debug("connect builder by design '%s', '%s', '%s'", widget_name, signal_name, handler_name) def get_ui(self, callback_obj=None, by_name=True): '''Creates the ui object with widgets as attributes connects signals by 2 methods this method does not appear in Gtk.Builder''' result = UiFactory(self.widgets) # Hook up any signals the user defined in glade if callback_obj is not None: # connect glade define handlers self.connect_signals(callback_obj) if by_name: auto_connect_by_name(callback_obj, self) return result # pylint: disable=R0903 # this class deliberately does not provide any public interfaces # apart from the glade widgets class UiFactory(): ''' provides an object with attributes as glade widgets''' def __init__(self, widget_dict): """Initialize the UiFactory.""" self._widget_dict = widget_dict for (widget_name, widget) in list(widget_dict.items()): setattr(self, widget_name, widget) # Mangle any non-usable names (like with spaces or dashes) # into pythonic ones cannot_message = """cannot bind ui.%s, name already exists consider using a pythonic name instead of design name '%s'""" consider_message = """consider using a pythonic name instead of design name '%s'""" for (widget_name, widget) in list(widget_dict.items()): pyname = make_pyname(widget_name) if pyname != widget_name: if hasattr(self, pyname): logger.debug(cannot_message, pyname, widget_name) else: logger.debug(consider_message, widget_name) setattr(self, pyname, widget) def iterator(): '''Support 'for o in self' ''' return iter(list(widget_dict.values())) setattr(self, '__iter__', iterator) def __getitem__(self, name): 'access as dictionary where name might be non-pythonic' return self._widget_dict[name] # pylint: enable=R0903 def make_pyname(name): ''' mangles non-pythonic names into pythonic ones''' pyname = '' for character in name: if (character.isalpha() or character == '_' or (pyname and character.isdigit())): pyname += character else: pyname += '_' return pyname # Until bug https://bugzilla.gnome.org/show_bug.cgi?id=652127 is fixed, we # need to reimplement inspect.getmembers. GObject introspection doesn't # play nice with it. def getmembers(obj, check): """Reimplementation of getmembers""" members = [] for k in dir(obj): try: attr = getattr(obj, k) except: continue if check(attr): members.append((k, attr)) members.sort() return members def dict_from_callback_obj(callback_obj): '''a dictionary interface to callback_obj''' methods = getmembers(callback_obj, inspect.ismethod) aliased_methods = [x[1] for x in methods if hasattr(x[1], 'aliases')] # a method may have several aliases # ~ @alias('on_btn_foo_clicked') # ~ @alias('on_tool_foo_activate') # ~ on_menu_foo_activate(): # ~ pass alias_groups = [(x.aliases, x) for x in aliased_methods] aliases = [] for item in alias_groups: for alias in item[0]: aliases.append((alias, item[1])) dict_methods = dict(methods) dict_aliases = dict(aliases) results = {} results.update(dict_methods) results.update(dict_aliases) return results def auto_connect_by_name(callback_obj, builder): '''finds handlers like on__ and connects them i.e. find widget,signal pair in builder and call widget.connect(signal, on__)''' callback_handler_dict = dict_from_callback_obj(callback_obj) for item in list(builder.widgets.items()): (widget_name, widget) = item signal_ids = [] try: widget_type = type(widget) while widget_type: signal_ids.extend(GObject.signal_list_ids(widget_type)) widget_type = GObject.type_parent(widget_type) except RuntimeError: # pylint wants a specific error pass signal_names = [GObject.signal_name(sid) for sid in signal_ids] # Now, automatically find any the user didn't specify in glade for sig in signal_names: # using convention suggested by glade sig = sig.replace("-", "_") handler_names = ["on_%s_%s" % (widget_name, sig)] # Using the convention that the top level window is not # specified in the handler name. That is use # on_destroy() instead of on_windowname_destroy() if widget is callback_obj: handler_names.append("on_%s" % sig) do_connect(item, sig, handler_names, callback_handler_dict, builder.connections) log_unconnected_functions(callback_handler_dict, builder.connections) def do_connect(item, signal_name, handler_names, callback_handler_dict, connections): '''connect this signal to an unused handler''' widget_name, widget = item for handler_name in handler_names: target = handler_name in list(callback_handler_dict.keys()) connection = (widget_name, signal_name, handler_name) duplicate = connection in connections if target and not duplicate: widget.connect(signal_name, callback_handler_dict[handler_name]) connections.append(connection) logger.debug("connect builder by name '%s','%s', '%s'", widget_name, signal_name, handler_name) def log_unconnected_functions(callback_handler_dict, connections): '''log functions like on_* that we could not connect''' connected_functions = [x[2] for x in connections] handler_names = list(callback_handler_dict.keys()) unconnected = [x for x in handler_names if x.startswith('on_')] for handler_name in connected_functions: try: unconnected.remove(handler_name) except ValueError: pass for handler_name in unconnected: logger.debug("Not connected to builder '%s'", handler_name) mugshot-0.4.2/mugshot_lib/CameraDialog.py0000664000175000017500000000442013517364451022346 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . import logging from gi.repository import Gtk # pylint: disable=E0611 from . helpers import get_builder logger = logging.getLogger('mugshot_lib') class CameraDialog(Gtk.Dialog): """Camera Dialog""" __gtype_name__ = "CameraDialog" def __new__(cls): """Special static method that's automatically called by Python when constructing a new instance of this class. Returns a fully instantiated PreferencesDialog object. """ builder = get_builder('CameraMugshotDialog') new_object = builder.get_object("camera_mugshot_dialog") new_object.finish_initializing(builder) return new_object def finish_initializing(self, builder): """Called while initializing this instance in __new__ finish_initalizing should be called after parsing the ui definition and creating a PreferencesDialog object with it in order to finish initializing the start of the new PerferencesMugshotDialog instance. Put your initialization code in here and leave __init__ undefined. """ # Get a reference to the builder and set up the signals. self.builder = builder self.ui = builder.get_ui(self, True) # code for other initialization actions should be added here def on_btn_close_clicked(self, widget, data=None): """Destroy the dialog when closed.""" self.destroy() mugshot-0.4.2/mugshot_lib/SudoDialog.py0000664000175000017500000002715513517364451022102 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . import os from locale import gettext as _ from gi.repository import Gtk, GdkPixbuf import pexpect gtk_version = (Gtk.get_major_version(), Gtk.get_minor_version(), Gtk.get_micro_version()) def check_gtk_version(major_version, minor_version, micro=0): """Return true if running gtk >= requested version""" return gtk_version >= (major_version, minor_version, micro) # Check if the LANG variable needs to be set use_env = False def check_dependencies(commands=[]): """Check for the existence of required commands, and sudo access""" # Check for sudo if pexpect.which("sudo") is None: return False # Check for required commands for command in commands: if pexpect.which(command) is None: return False # Check for LANG requirements child = None try: child = env_spawn('sudo', ['-v'], 1) if child.expect([".*ssword.*", "Sorry", pexpect.EOF, pexpect.TIMEOUT]) == 3: global use_env use_env = True child.close() except OSError: if child is not None: child.close() return False # Check for sudo rights child = env_spawn('sudo', ['-v'], 1) try: index = child.expect([".*ssword.*", "Sorry", pexpect.EOF, pexpect.TIMEOUT]) child.close() if index == 0 or index == 2: # User in sudoers, or already admin return True elif index == 1 or index == 3: # User not in sudoers return False except: # Something else went wrong. child.close() return False def env_spawn(command, args, timeout): """Use pexpect.spawn, adapt for timeout and env requirements.""" env = os.environ env["LANG"] = "C" if use_env: child = pexpect.spawn(command, args, env) else: child = pexpect.spawn(command, args) child.timeout = timeout return child class SudoDialog(Gtk.Dialog): ''' Creates a new SudoDialog. This is a replacement for using gksudo which provides additional flexibility when performing sudo commands. Only used to verify password by issuing 'sudo /bin/true'. Keyword arguments: - parent: Optional parent Gtk.Window - icon: Optional icon name or path to image file. - message: Optional message to be displayed instead of the defaults. - name: Optional name to be displayed, for when message is not used. - retries: Optional maximum number of password attempts. -1 is unlimited. Signals emitted by run(): - NONE: Dialog closed. - CANCEL: Dialog cancelled. - REJECT: Password invalid. - ACCEPT: Password valid. ''' def __init__(self, title=None, parent=None, icon=None, message=None, name=None, retries=-1): """Initialize the SudoDialog.""" # initialize the dialog super(SudoDialog, self).__init__(title=title, transient_for=parent, modal=True, destroy_with_parent=True) # self.connect("show", self.on_show) if title is None: title = _("Password Required") self.set_title(title) self.set_border_width(5) # Content Area content_area = self.get_content_area() grid = Gtk.Grid.new() grid.set_row_spacing(6) grid.set_column_spacing(12) grid.set_margin_left(5) grid.set_margin_right(5) content_area.add(grid) # Icon self.dialog_icon = Gtk.Image.new_from_icon_name("dialog-password", Gtk.IconSize.DIALOG) grid.attach(self.dialog_icon, 0, 0, 1, 2) # Text self.primary_text = Gtk.Label.new("") self.primary_text.set_use_markup(True) self.primary_text.set_halign(Gtk.Align.START) self.secondary_text = Gtk.Label.new("") self.secondary_text.set_use_markup(True) self.secondary_text.set_halign(Gtk.Align.START) self.secondary_text.set_margin_top(6) grid.attach(self.primary_text, 1, 0, 1, 1) grid.attach(self.secondary_text, 1, 1, 1, 1) # Infobar self.infobar = Gtk.InfoBar.new() self.infobar.set_margin_top(12) self.infobar.set_message_type(Gtk.MessageType.WARNING) content_area = self.infobar.get_content_area() infobar_icon = Gtk.Image.new_from_icon_name("dialog-warning", Gtk.IconSize.BUTTON) label = Gtk.Label.new(_("Incorrect password... try again.")) content_area.add(infobar_icon) content_area.add(label) grid.attach(self.infobar, 0, 2, 2, 1) content_area.show_all() self.infobar.set_no_show_all(True) # Password label = Gtk.Label.new("") label.set_use_markup(True) label.set_markup("%s" % _("Password:")) label.set_halign(Gtk.Align.START) label.set_margin_top(12) self.password_entry = Gtk.Entry() self.password_entry.set_visibility(False) self.password_entry.set_activates_default(True) self.password_entry.set_margin_top(12) grid.attach(label, 0, 3, 1, 1) grid.attach(self.password_entry, 1, 3, 1, 1) # Buttons button = self.add_button(_("Cancel"), Gtk.ResponseType.CANCEL) button_box = button.get_parent() button_box.set_margin_top(24) ok_button = Gtk.Button.new_with_label(_("OK")) ok_button.connect("clicked", self.on_ok_clicked) ok_button.set_receives_default(True) ok_button.set_can_default(True) ok_button.set_sensitive(False) self.set_default(ok_button) if check_gtk_version(3, 12): button_box.pack_start(ok_button, True, True, 0) else: button_box.pack_start(ok_button, False, False, 0) self.password_entry.connect("changed", self.on_password_changed, ok_button) self.set_dialog_icon(icon) # add primary and secondary text if message: primary_text = message secondary_text = None else: primary_text = _("Enter your password to\n" "perform administrative tasks.") secondary_text = _("The application '%s' lets you\n" "modify essential parts of your system." % name) self.format_primary_text(primary_text) self.format_secondary_text(secondary_text) self.attempted_logins = 0 self.max_attempted_logins = retries self.show_all() def on_password_changed(self, widget, button): """Set the apply button sensitivity based on password input.""" button.set_sensitive(len(widget.get_text()) > 0) def format_primary_text(self, message_format): ''' Format the primary text widget. ''' self.primary_text.set_markup("%s" % message_format) def format_secondary_text(self, message_format): ''' Format the secondary text widget. ''' self.secondary_text.set_markup(message_format) def set_dialog_icon(self, icon=None): ''' Set the icon for the dialog. If the icon variable is an absolute path, the icon is from an image file. Otherwise, set the icon from an icon name. ''' # default icon size is dialog. icon_size = Gtk.IconSize.DIALOG if icon: if os.path.isfile(os.path.abspath(icon)): # icon is a filename, so load it into a pixbuf to an image pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(icon, icon_size, icon_size) self.dialog_icon.set_from_pixbuf(pixbuf) self.set_icon_from_file(icon) else: # icon is an named icon, so load it directly to an image self.dialog_icon.set_from_icon_name(icon, icon_size) self.set_icon_name(icon) else: # fallback on password icon self.dialog_icon.set_from_icon_name('dialog-password', icon_size) self.set_icon_name('dialog-password') def on_show(self, widget): '''When the dialog is displayed, clear the password.''' self.set_password('') self.password_valid = False def on_ok_clicked(self, widget): ''' When the OK button is clicked, attempt to use sudo with the currently entered password. If successful, emit the response signal with ACCEPT. If unsuccessful, try again until reaching maximum attempted logins, then emit the response signal with REJECT. ''' if self.attempt_login(): self.password_valid = True self.emit("response", Gtk.ResponseType.ACCEPT) else: self.password_valid = False # Adjust the dialog for attactiveness. self.infobar.show() self.password_entry.grab_focus() if self.attempted_logins == self.max_attempted_logins: self.attempted_logins = 0 self.emit("response", Gtk.ResponseType.REJECT) def get_password(self): '''Return the currently entered password, or None if blank.''' if not self.password_valid: return None password = self.password_entry.get_text() if password == '': return None return password def set_password(self, text=None): '''Set the password entry to the defined text.''' if text is None: text = '' self.password_entry.set_text(text) self.password_valid = False def attempt_login(self): ''' Try to use sudo with the current entered password. Return True if successful. ''' # Set the pexpect variables and spawn the process. child = env_spawn('sudo', ['/bin/true'], 1) try: # Check for password prompt or program exit. child.expect([".*ssword.*", pexpect.EOF]) child.sendline(self.password_entry.get_text()) child.expect(pexpect.EOF) except pexpect.TIMEOUT: # If we timeout, that means the password was unsuccessful. pass # Close the child process if it is still open. child.close() # Exit status 0 means success, anything else is an error. if child.exitstatus == 0: self.attempted_logins = 0 return True self.attempted_logins += 1 return False mugshot-0.4.2/mugshot_lib/Window.py0000664000175000017500000000763613517364451021321 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . import os import logging from gi.repository import Gio, Gtk # pylint: disable=E0611 from . helpers import get_builder, show_uri logger = logging.getLogger('mugshot_lib') class Window(Gtk.Window): """This class is meant to be subclassed by MugshotWindow. It provides common functions and some boilerplate.""" __gtype_name__ = "Window" # To construct a new instance of this method, the following notable # methods are called in this order: # __new__(cls) # __init__(self) # finish_initializing(self, builder) # __init__(self) # # For this reason, it's recommended you leave __init__ empty and put # your initialization code in finish_initializing def __new__(cls): """Special static method that's automatically called by Python when constructing a new instance of this class. Returns a fully instantiated BaseMugshotWindow object. """ builder = get_builder('MugshotWindow') new_object = builder.get_object("mugshot_window") new_object.finish_initializing(builder) return new_object def finish_initializing(self, builder): """Called while initializing this instance in __new__ finish_initializing should be called after parsing the UI definition and creating a MugshotWindow object with it in order to finish initializing the start of the new MugshotWindow instance. """ # Get a reference to the builder and set up the signals. self.builder = builder self.ui = builder.get_ui(self, True) self.CameraDialog = None # class self.camera_dialog = None # instance self.settings = Gio.Settings.new("apps.mugshot") self.settings.connect('changed', self.on_preferences_changed) self.tmpfile = None def on_help_activate(self, widget, data=None): """Show the Help documentation when Help is clicked.""" show_uri(self, "https://github.com/bluesabre/mugshot/wiki") def on_menu_camera_activate(self, widget, data=None): """Display the camera window for mugshot.""" if self.camera_dialog is not None: logger.debug('show existing camera_dialog') self.camera_dialog.show() elif self.CameraDialog is not None: logger.debug('create new camera_dialog') self.camera_dialog = self.CameraDialog() # pylint: disable=E1102 self.camera_dialog.connect( 'apply', self.on_camera_dialog_apply) # pylint: disable=E1101 self.camera_dialog.show() def on_destroy(self, widget, data=None): """Called when the MugshotWindow is closed.""" # Clean up code for saving application state should be added here. if self.tmpfile and os.path.isfile(self.tmpfile.name): os.remove(self.tmpfile.name) Gtk.main_quit() def on_preferences_changed(self, settings, key, data=None): """Log preference updates.""" logger.debug('preference changed: %s = %s' % (key, str(settings.get_value(key)))) mugshot-0.4.2/mugshot_lib/__init__.py0000664000175000017500000000213113517364451021572 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . '''facade - makes mugshot_lib package easy to refactor while keeping its api constant''' # lint:disable from . helpers import set_up_logging from . Window import Window from . mugshotconfig import get_version # lint:enable mugshot-0.4.2/mugshot_lib/helpers.py0000664000175000017500000001105413517364451021501 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . """Helpers for an Ubuntu application.""" import logging import os import tempfile from . mugshotconfig import get_data_file from . Builder import Builder def get_builder(builder_file_name): """Return a fully-instantiated Gtk.Builder instance from specified ui file :param builder_file_name: The name of the builder file, without extension. Assumed to be in the 'ui' directory under the data path. """ # Look for the ui file that describes the user interface. ui_filename = get_data_file('ui', '%s.ui' % (builder_file_name,)) if not os.path.exists(ui_filename): ui_filename = None builder = Builder() builder.set_translation_domain('mugshot') builder.add_from_file(ui_filename) return builder def get_media_file(media_file_name): """Retrieve the filename for the specified file.""" media_filename = get_data_file('media', '%s' % (media_file_name,)) if not os.path.exists(media_filename): media_filename = None return "file:///" + media_filename class NullHandler(logging.Handler): """Handle NULL""" def emit(self, record): """Do not emit anything.""" pass def set_up_logging(opts): """Set up the logging formatter.""" # add a handler to prevent basicConfig root = logging.getLogger() null_handler = NullHandler() root.addHandler(null_handler) formatter = logging.Formatter("%(levelname)s:%(name)s:" " %(funcName)s() '%(message)s'") logger = logging.getLogger('mugshot') logger_sh = logging.StreamHandler() logger_sh.setFormatter(formatter) logger.addHandler(logger_sh) lib_logger = logging.getLogger('mugshot_lib') lib_logger_sh = logging.StreamHandler() lib_logger_sh.setFormatter(formatter) lib_logger.addHandler(lib_logger_sh) # Set the logging level to show debug messages. if opts.verbose: logger.setLevel(logging.DEBUG) logger.debug('logging enabled') if opts.verbose > 1: lib_logger.setLevel(logging.DEBUG) def show_uri(parent, link): """Open the URI.""" from gi.repository import Gtk # pylint: disable=E0611 screen = parent.get_screen() Gtk.show_uri(screen, link, Gtk.get_current_event_time()) def alias(alternative_function_name): '''see http://www.drdobbs.com/web-development/184406073#l9''' def decorator(function): '''attach alternative_function_name(s) to function''' if not hasattr(function, 'aliases'): function.aliases = [] function.aliases.append(alternative_function_name) return function return decorator # = Temporary File Management ============================================ # temporary_files = {} def new_tempfile(identifier): """Create a new temporary file, register it, and return the filename.""" remove_tempfile(identifier) temporary_file = tempfile.NamedTemporaryFile(delete=False) temporary_file.close() filename = temporary_file.name temporary_files[identifier] = filename return filename def get_tempfile(identifier): """Retrieve the specified temporary filename.""" if identifier in list(temporary_files.keys()): return temporary_files[identifier] return None def remove_tempfile(identifier): """Remove the specified temporary file from the system.""" if identifier in list(temporary_files.keys()): filename = temporary_files[identifier] if os.path.isfile(filename): os.remove(filename) temporary_files.pop(identifier) def clear_tempfiles(): """Remove all temporary files registered to Mugshot.""" for identifier in list(temporary_files.keys()): remove_tempfile(identifier) mugshot-0.4.2/mugshot_lib/mugshotconfig.py0000664000175000017500000000425113517366245022717 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . import os __all__ = [ 'project_path_not_found', 'get_data_file', 'get_data_path', ] # Where your project will look for your data (for instance, images and ui # files). By default, this is ../data, relative your trunk layout __mugshot_data_directory__ = '../data/' __license__ = 'GPL-3+' __version__ = '0.4.2' class project_path_not_found(Exception): """Raised when we can't find the project directory.""" def get_data_file(*path_segments): """Get the full path to a data file. Returns the path to a file underneath the data directory (as defined by `get_data_path`). Equivalent to os.path.join(get_data_path(), *path_segments). """ return os.path.join(get_data_path(), *path_segments) def get_data_path(): """Retrieve mugshot data path This path is by default /../data/ in trunk and /usr/share/mugshot in an installed version but this path is specified at installation time. """ # Get pathname absolute or relative. path = os.path.join( os.path.dirname(__file__), __mugshot_data_directory__) abs_data_path = os.path.abspath(path) if not os.path.exists(abs_data_path): raise project_path_not_found return abs_data_path def get_version(): """Return the program version.""" return __version__ mugshot-0.4.2/po/0000775000175000017500000000000013517367015015565 5ustar bluesabrebluesabre00000000000000mugshot-0.4.2/po/POTFILES.in0000664000175000017500000000222413517364451017343 0ustar bluesabrebluesabre00000000000000### BEGIN LICENSE # Copyright (C) 2013-2019 Sean Davis # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License version 3, as published # by the Free Software Foundation. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . ### END LICENSE # Desktop File mugshot.desktop.in # Glade Files [type: gettext/glade]data/ui/CameraMugshotDialog.ui [type: gettext/glade]data/ui/MugshotWindow.ui # Python Files mugshot/__init__.py mugshot/CameraMugshotDialog.py mugshot/MugshotWindow.py mugshot_lib/Builder.py mugshot_lib/CameraDialog.py mugshot_lib/mugshotconfig.py mugshot_lib/__init__.py mugshot_lib/helpers.py mugshot_lib/SudoDialog.py mugshot_lib/Window.py # XML Files [type: gettext/xml]data/metainfo/mugshot.appdata.xml.in mugshot-0.4.2/po/be.po0000664000175000017500000002355113517364451016522 0ustar bluesabrebluesabre00000000000000# Translators: # Zmicer Turok , 2019 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2019-05-27 10:40+0000\n" "Last-Translator: Zmicer Turok , 2019\n" "Language-Team: Belarusian (https://www.transifex.com/bluesabreorg/teams/99550/be/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: be\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" "X-Generator: Launchpad (build 18968)\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Пра мяне" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Наладзіць выяву профіля і кантактныя звесткі" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Захоп - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Папярэдні прагляд" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Па цэнтры" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Злева" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Справа" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Абрэзаць" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Абраць з набору…" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Сфатаграфаваць камерай…" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Агляд…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Імя" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Прозвішча" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Ініцыялы" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Хатні тэлефон" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Адрас электроннай пошты" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Працоўны тэлефон" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Факс" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Абраць фотаздымак…" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" "Паказваць адладачныя паведамленні (-vv пакажа паведамленні mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Паўтарыць" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Аўтэнтыфікацыя скасаваная." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Аўтэнтыфікацыя схібіла." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Падчас захавання змен адбылася памылка." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Звесткі карыстальніка не абнавіліся." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Абнавіць аватар у Pidgin?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Хочаце таксама абнавіць ваш аватар у Pidgin?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Увядзіце ваш пароль для змены звестак карыстальніка." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Гэта захады для прадухілення непажаданых змен\n" "вашай асабістай інфармацыі." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Абнавіць звесткі карыстальніка ў LibreOffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Хочаце таксама абнавіць вашыя звесткі карыстальніка ў LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Патрабуецца пароль" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Хібны пароль... паспрабуйце зноў." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Пароль:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Скасаваць" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "Добра" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Увядзіце ваш пароль для\n" "выканання адміністратыўных задач." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Праграма \"%s\" дазволіць вам\n" "мадыфікаваць важную частку сістэмы." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Лёгкаважная канфігурацыя карыстальніка" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot дазваляе карыстальнікам зручна змяняць асабістую кантактную " "інфармацыю. Пры дапамозе Mugshot карыстальнікі могуць:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Прызначыць фотаздымак профіля, што адлюстроўваецца ў акне ўваходу і " "сінхранізаваць яго з Pidgin " #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Увесці звесткі карыстальніка, што захоўваюцца ў /etc/passwd (зручна " "выкарыстоўваць з загадам finger) і сінхранізаваць іх з LibreOffice" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" "Гэты выпуск уключае паляпшэнні якасці коду, выпраўленні памылак, абнаўленне " "перакладаў. Цяпер Mugshot можна сабраць і запусціць у мінімальным асяроддзі " "chroot." #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" "У гэтым стабільным выпуску дадалася падтрымка апошніх версій GTK і " "GStreamer." #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" "Гэты выпуск для распрацоўшчыкаў аднаўляе функцыянальнасць дыялогаў камеры ў " "апошніх версіях праграмнага забеспячэння." #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" "У гэтым выпуску для распрацоўшчыкаў выпраўленая вялікая колкасць памылак з " "папярэдніх выпускаў. Уласцівасці карыстальніка, якія нельга рэдагаваць, " "цяпер даступныя толькі адміністратарам." #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "У гэтым выпуску для распрацоўшчыкаў абноўлена дыялогавае акно камеры для " "выкарыстання Cheese і Clutter для адлюстравання і захопу канала камеры." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Гэты стабільны выпуск паляпшае функцыянальнасць Mugshot для карыстальнікаў " "LDAP, уключае апошнюю версію SudoDialog, паляпшэнні вонкавага выгляду і " "дыялогавага акна ўводу пароля." mugshot-0.4.2/po/ca.po0000664000175000017500000002054313517364451016515 0ustar bluesabrebluesabre00000000000000# Catalan translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2018-10-21 10:18+0000\n" "Last-Translator: Robert Antoni Buj Gelonch \n" "Language-Team: Catalan \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" "Language: ca\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Quant a mi" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Configureu la imatge del perfil i les dades de contacte" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Captura - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Vista prèvia" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Al centre" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "A l'esquerra" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "A la dreta" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Escapça" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Selecciona de l'inventari…" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Captura de la càmera…" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Navega…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Nom" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Cognoms" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Inicials" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Telèfon de casa" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Adreça electrònica" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telèfon de l'oficina" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Selecciona una imatge…" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Mostra els missatges de depuració (-vv depura també mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Reintenta" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "S'ha cancel·lat l'autenticació." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Ha fallat l'autenticació." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "S'ha produït un error en desar els canvis." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "No s'han actualitzat les dades d'usuari." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Actualitzar la icona d'usuari del Pidgin?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Voleu actualitzar també la icona d'usuari del Pidgin?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Introduïu la contrasenya per canviar les dades d'usuari." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Aquesta és una mesura de seguretat per evitar els canvis no desitjats\n" "de la informació personal." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Actualitzar les dades d'usuari del LibreOffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Voleu actualitzar també les dades d'usuari en el LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Es requereix una contrasenya" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Contrasenya incorrecta... Torneu a intentar-ho." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Contrasenya:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Cancel·la" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "D'acord" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Introduïu la vostra contrasenya per\n" "realitzar tasques administratives." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "L'aplicació «%s» us permet\n" "modificar parts essencials del sistema." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Configuració d'usuari mínima" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "El Mugshot permet als usuaris actualitzar fàcilment la informació de " "contacte personal. Amb el Mugshot els usuaris són capaços de:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Configurar la imatge d'usuari que es mostra en la pantalla d'inici de sessió " "i, opcionalment, sincronitzar aquesta imatge amb la icona d'usuari de Pidgin" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Configurar les dades d'usuari emmagatzemades a /etc/passwd (accessibles amb " "l'ordre finger) i, opcionalment, sincronitzar-les amb la informació de " "contacte del LibreOffice" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" "Aquest llançament inclou una sèrie de millores de qualitat de codi, " "correccions d'errors i traduccions. Mugshot ara es pot costruir i executar " "en un entorn chroot mínim." #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" "Aquesta versió estable afegeix suport per a les últimes tecnologies de GTK i " "GStreamer." #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" "Aquesta versió de desenvolupament restaura la funcionalitat del diàleg de la " "càmera amb versions de programari recents." #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" "Aquesta versió de desenvolupament corregeix un gran nombre d'errors de " "versions anteriors. Les propietats d'usuari que no es poden editar ara estan " "restringides als usuaris administradors." #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "Aquesta versió de desenvolupament actualitza el diàleg de la càmera per " "utilitzar Cheese i Clutter per mostrar i capturar la imatge de la càmera." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Aquesta versió estable millora la funcionalitat del Mugshot per als usuaris " "d'LDAP i inclou l'últim SudoDialog, que millora l'aparença i la facilitat " "d'ús del diàleg de la contrasenya." mugshot-0.4.2/po/ca@valencia.po0000664000175000017500000001502313517364451020315 0ustar bluesabrebluesabre00000000000000# Catalan (Valencian) translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2013-07-22 19:12+0000\n" "Last-Translator: Sergio Baldoví \n" "Language-Team: Catalan (Valencian) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Quant a mi" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Configureu l'imatge del perfil i les dades de contacte" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Captura d'imatges - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Previsualització" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Al centre" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "A l'esquerra" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "A la dreta" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Retalla" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Selecciona des de mostrari..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Captura des d'una càmera..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Explora..." #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Nom" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Cognom" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Inicials" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Telèfon de casa" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Correu electrònic" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telèfon de l'oficina" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Seleccioneu una imatge..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Mostra missatges de depuració (-vv també depura mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Reintenta" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "" #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "" #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "" #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "" #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Actualitzar la icona de l'amic en Pidgin?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Desitgeu també actualitzar la icona de l'amic en Pidgin?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "" #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Esta és una mesura de seguretat per a previndre actualitzacions\n" "no desitjades de la informació personal." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Actualitzar les dades d'usuari en LibreOffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Desitgeu també actualitzar les dades d'usuari en LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Contrasenya:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/cs.po0000664000175000017500000001661113517364451016540 0ustar bluesabrebluesabre00000000000000# Czech translation for mugshot # Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2014. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2014-09-08 06:23+0000\n" "Last-Translator: Petr Šimáček \n" "Language-Team: Czech \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "O mně" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Nastavte si svůj profilový snímek i všechny kontaktní údaje" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Zachycení - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Náhled" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Uprostřed" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Vlevo" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Vpravo" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Oříznout" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Vybrat ze zásob..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Zachycení z kamery..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Procházet…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Křestní jméno" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Příjmení" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Iniciály" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Telefon domů" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Emailová adresa" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telefon do kanceláře" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Vybrat fotografii..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Zobrazit chybové zprávy (-vv debugs mugshot_lib also)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Zkusit znovu" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Ověření zrušeno." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Ověření selhalo." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Při ukládání změn došlo k chybě." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Detaily o uživateli nebyly aktualizovány." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Aktualizovat ikonu v Pidginu?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Chcete také aktualizovat svou ikonu v Pidginu?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Kvůli změně dat o uživateli je nutné vložit heslo." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Jde o bezpečnostní opatření, aby se zabránilo nežádoucím aktualizacím\n" "vašich osobních údajů." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Obnovit data o uživateli i v Libreoffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Chcete obnovit vaše data i v Libreoffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Je vyžadováno heslo" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Špatné heslo... zkuste to znovu" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Heslo:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Zrušit:" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Vložte své heslo\n" "k provádění administrativních úkolů." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Program '%s' vám dovolí\n" "upravit základní části systému." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Jednoduché uživatelské nastavení" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot umožňuje uživatelům snadno aktualizovat osobní kontaktní informace. " "S Mugshotem jsou uživatelé schopni:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Nastavit fotografii účtu, která se bude zobrazovat při přihlášení a případně " "ji nastavit jako ikonu v IM Pidgin" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Nastavit detaily účtu v souboru /etc/passwd (použitelné s příkazem finger) a " "případně synchronizovat s jejich LibreOffice kontaktními informacemi" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Tato stabilní verze zlepšuje funkčnost Mugshotu pro uživatele LDAP, a " "zahrnuje nejnovější SudoDialog, zlepšení vzhledu a použitelnosti dialogu " "hesla." mugshot-0.4.2/po/da.po0000664000175000017500000001773313517364451016525 0ustar bluesabrebluesabre00000000000000# Danish translation for mugshot # Copyright (c) 2017 Rosetta Contributors and Canonical Ltd 2017 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2017. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2019-05-17 12:50+0000\n" "Last-Translator: scootergrisen \n" "Language-Team: Danish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Om mig" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Konfigurer dit profilbillede og kontaktdetaljer" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Indfang - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Forhåndsvisning" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "I midten" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Venstre" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Højre" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Beskæring" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Vælg fra lager …" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Indfang fra kamera …" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Gennemse…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Fornavn" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Efternavn" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Initialer" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Telefon (hjemme)" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "E-mailadresse" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telefon (kontor)" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Vælg et billede …" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Vis fejlretningsmeddelelser (-vv fejlretter også mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Prøv igen" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Autentifikation annulleret." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Autentifikation mislykkedes." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Der opstod en fejl da ændringer blev forsøgt gemt." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Brugerdetaljer blev ikke opdateret." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Opdater Pidgin venneikon?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Vil du også opdatere dit Pidgin venneikon?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Indtast din adgangskode for at skifte brugerdetaljer." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Dette er et sikkerhedstiltag for at forhindre uønskede opdateringer\n" "til din personlige information." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Opdater LibreOffice brugerdetaljer?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Vil du også opdatere dine brugerdetaljer i LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Adgangskode kræves" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Forkert adgangskode ... prøv igen." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Adgangskode:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Annuller" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Indtast din adgangskode for at\n" "udføre administrative opgaver." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Programmet '%s' lader dig\n" "ændre essentielle dele af dit system." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Letvægts brugerkonfiguration" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot gør det muligt for brugere at opdatere personlig kontaktinformation. " "Med Mugshot kan brugere:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Sæt kontoens billede som vises ved login og synkroniser valgfrit dette " "billede med deres Pidgin venneikon" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Sæt kontodetaljer lagret i /etc/passwd (typisk med finger-kommandoen) og " "synkroniser valgfrit med deres LibreOffice kontaktinformation" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" "Denne udgivelse inkluderer et antal kvalitetsforbedringer af koden, " "fejlrettelser og oversættelser. Mugshot kan nu bygges og køres i et minimalt " "chroot-miljø." #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" "Denne stabile udgivelse tilføjer understøttelse af de seneste GTK- og " "GStreamer-teknologier." #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" "Denne udviklingsudgivelse gendanner kameradialogfunktionalitet som med nyere " "softwareversioner." #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" "Denne udviklingsudgivelse retter et stort antal fejl fra forrige udgivelser. " "Brugeregenskaber som ikke kan redigeres er nu begrænset til administrative " "brugere." #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "Denne udviklingsudgivelse opgraderer kameradialogen så Cheese og Clutter " "bruges til at vise og optage kamera-feedet." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Denne stabile udgivelse forbedre Mugshot-funktionaliteter for LDAP-brugere " "og inkluderer den seneste SudoDialog, som forbedre udseendet af adgangskode-" "dialogen." mugshot-0.4.2/po/de.po0000664000175000017500000002037713517364451016527 0ustar bluesabrebluesabre00000000000000# Translators: # Sean Davis , 2019 # Vinzenz Vietzke , 2019 # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2019-05-27 10:40+0000\n" "Last-Translator: Vinzenz Vietzke , 2019\n" "Language-Team: German (https://www.transifex.com/bluesabreorg/teams/99550/de/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Launchpad (build 18968)\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Persönliche Informationen" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Profilbild und Kontaktdetails konfigurieren" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Aufnahme - Benutzerfoto" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Vorschau" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Mitte" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Links" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Rechts" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Zuschneiden" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Aus den Vorlagen auswählen …" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Mit der Kamera aufnehmen …" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Durchsuchen …" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Benutzerfoto" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Vorname" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Nachname" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Initialien" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Private Telefonnummer" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "E-Mail-Adresse" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Geschäftstelefon" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Foto auswählen …" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Fehlerdiagnosenachrichten anzeigen (auch -vv debugs mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Erneut versuchen" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Legitimierung abgebrochen." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Legitimierung fehlgeschlagen." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Beim Speichern der Änderungen ist ein Fehler aufgetreten." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Benutzerdatails wurden nicht aktualisiert." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Pidgin-Freundesymbol aktualisieren?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Soll das Pidgin-Freundesymbol auch aktualisiert werden?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Passwort eingeben um die Benutzerdaten zu ändern." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Das ist eine Sicherheitsmaßnahme, um ungewollte Aktualisierungen\n" "der persönlichen Informationen zu verhindern." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "LibreOffice-Benutzerdaten aktualisieren?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Sollen die LibreOffice-Benutzerdaten auch aktualisiert werden?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Passwort erforderlich" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Falsches Passwort … bitte erneut versuchen." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Passwort:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Abbrechen" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Passwort eingeben, um\n" "administrative Aufgaben durchzuführen." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Die Anwendung »%s« ermöglicht die\n" "Veränderung von wesentlichen Teilen Ihres Betriebssystems." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Einfache Nutzerkonfiguration" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot ermöglicht es Benutzern, auf einfache Weise persönliche " "Informationen zu ändern. Mit Mugshot können Sie:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Das Profilfoto, das beim Anmelden angezeigt wird, einstellen und es optional" " mit dem Pidgin-Frundesymbol synchronisieren." #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Kontodetails, die in /etc/passwd gespeichert werden einstellen und optional " "mit den LibreOffice-Kontaktinformationen synchronisieren." #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" "Diese Version enthält eine Reihe von Verbesserungen der Codequalität, " "Bugfixes und Übersetzungen. Mugshot kann nun in einer minimalen Chroot-" "Umgebung gebaut und ausgeführt werden." #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" "Dieses stabile Release bietet Unterstützung für die neuesten GTK- und " "GStreamer-Technologien." #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" "Diese Entwicklungsversion stellt die Kamera-Dialogfunktionalität mit den " "neuesten Softwareversionen wieder her." #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" "Dieses Entwicklungsrelease behebt eine große Anzahl von Fehlern aus früheren" " Releases. Benutzereigenschaften, die nicht bearbeitet werden können, sind " "nun auf administrative Benutzer beschränkt." #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "Diese Entwickler-Version verbessert den Kamera-Dialog, der nun Cheese und " "Clutter für Anzeige und Aufnahme des Kamera Bildes nutzt." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Diese stabile Version verbessert die LDAP-Funktionalität und beinhaltet den " "aktuellsten SudoDialog, wodurch das Erscheinungsbild und die " "Nutzerfreundlichkeit des Passwortdialogs verbessert wird." mugshot-0.4.2/po/el.po0000664000175000017500000002221213517364451016525 0ustar bluesabrebluesabre00000000000000# Greek translation for mugshot # Copyright (c) 2015 Rosetta Contributors and Canonical Ltd 2015 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2015. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2015-08-19 12:34+0000\n" "Last-Translator: Lefteris Pavlou \n" "Language-Team: Greek \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Σχετικά Με Εμένα" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Διαμορφώστε την εικόνα προφίλ και τις λεπτομέρειες επαφής σας" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Αποτύπωση - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Προεπισκόπηση" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Κέντρο" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Αριστερά" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Δεξιά" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Περικοπή" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Επιλογή από αποθηκευμένες..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Αποτύπωση από την κάμερα..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Περιήγηση…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Όνομα" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Επώνυμο" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Αρχικά" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Τηλέφωνο Οικίας" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Διεύθυνση Ηλεκτρονικού Ταχυδρομείου" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Τηλέφωνο Εργασίας" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Επιλογή φωτογραφίας..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Προβολή μυνημάτων αποσφαλμάτωσης (-vv debugs mugshot_lib also)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Προσπάθεια ξανά" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Ακύρωση πιστοποίησης." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Αποτυχία πιστοποίησης." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Συνέβη ένα σφάλμα κατά την αποθήκευση των αλλαγών." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Οι λεπτομέρειες χρήστη δεν ανανεώθηκαν." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Ενημέρωση εικονιδίου του Pidgin buddy;" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Θα θέλατε επίσης να ενημερώσετε το εικονίδιο του Pidgin buddy;" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Εισάγετε το συνθηματικό σας για να αλλάξετε τις λεπτομέρειες χρήστη." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Αυτό είναι ένα μέτρο ασφαλείας για την αποφυγή ανεπιθύμητων ενημερώσεων\n" "στις προσωπικές σας πληροφορίες." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Ενημέρωση λεπτομερειών χρήστη του LibreOffice;" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "" "Θα θέλατε επίσης να ενημερώσετε τις λεπτομέρειες χρήστη του LibreOffice;" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Απαιτείται Συνθηματικό" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Λάθος συνθηματικό... προσπαθήστε ξανά." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Συνθηματικό:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Ακύρωση" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "Εντάξει" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Εισάγετε το συνθηματικό σας για να\n" "πραγματοποιήσετε εργασίες διαχείρισης." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Η εφαρμογή '%s' σας επιτρέπει\n" "να τροποποιήσετε βασικά στοιχεία του συστήματός σας." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Η εφαρμογή Mugshot επιτρέπει στους χρήστες να ενημερώνουν πληροφορίες " "προσωπικών επαφών με ευκολία. Με το Mugshot , οι χρήστες είναι σε θέση:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Να ορίσουν τη φωτογραφία λογαριασμού που εμφανίζεται στην οθόνη υποδοχής και " "προαιρετικά να συγχρονίσουν αυτή τη φωτογραφία με το εικονίδιο του Pidgin " "buddy." #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Να ορίσουν τις λεπτομέρειες λογαριασμού που είναι απόθηκευμένες στο " "/etc/passwd (μπορεί να χρησιμοποιηθεί με την εντολή finger) και προαιρετικά " "να τις συγχρονίσουν με τις πληροφορίες επαφής του LibreOffice" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Αυτή η σταθερή έκδοση βελτιώνει τη λειτουργικότητα του Mugshot για χρήστες " "LDAP, και περιλαμβάνει το πιο πρόσφατο Παράθυρο Διαλόγου Sudo, βελτιώνοντας " "την εμφάνιση και τη χρηστικότητα του παραθύρου διαλόγου εισαγωγής " "συνθηματικού." mugshot-0.4.2/po/en_AU.po0000664000175000017500000001455613517364451017130 0ustar bluesabrebluesabre00000000000000# English (Australia) translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2013-07-19 10:01+0000\n" "Last-Translator: Jackson Doak \n" "Language-Team: English (Australia) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "About Me" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Configure your profile image and contact details" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Capture - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Preview" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Centre" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Left" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Right" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Crop" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Select from stock…" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Capture from camera…" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Browse…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "First Name" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Last Name" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Initials" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Home Phone" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Email Address" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Office Phone" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Select a photo…" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Show debug messages (-vv debugs mugshot_lib also)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Retry" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "" #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "" #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "" #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "" #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Update Pidgin buddy icon?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Would you also like to update your Pidgin buddy icon?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "" #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "This is a security measure to prevent unwanted updates\n" "to your personal information." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Update LibreOffice user details?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Would you also like to update your user details in LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Password:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/eo.po0000664000175000017500000001343713517364451016541 0ustar bluesabrebluesabre00000000000000# Esperanto translation for mugshot # Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2014. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2014-07-15 00:02+0000\n" "Last-Translator: Adolfo Jayme \n" "Language-Team: Esperanto \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Pri mi" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Antaŭrigardo" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Foliumi…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Faksilo" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "" #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "" #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "" #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "" #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "" #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Pasvorto:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/es.po0000664000175000017500000002062413517364451016541 0ustar bluesabrebluesabre00000000000000# Spanish translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2019-04-24 20:28+0000\n" "Last-Translator: Toni Estevez \n" "Language-Team: Spanish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" "Language: es\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Acerca de mí" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Configure su imagen de perfil y los datos de contacto" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Capturar - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Vista previa" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Al centro" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "A la izquierda" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "A la derecha" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Cortar" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Seleccionar del muestrario…" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Capturar con la cámara…" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Examinar…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Nombre" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Apellidos" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Iniciales" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Teléfono de casa" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Correo electrónico" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Teléfono de la oficina" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Seleccionar una foto…" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Mostrar los mensajes de depuración (-vv depura mugshot_lib también)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Reintentar" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Se ha cancelado la autenticación." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Ha fallado la autenticación." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Se ha producido un error al guardar los cambios." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "No se actualizaron los datos de usuario." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "¿Actualizar el icono de usuario de Pidgin?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "¿Quiere actualizar también el icono de usuario de Pidgin?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Introduzca su contraseña para cambiar los datos de usuario." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Esta es una medida de seguridad para evitar los cambios no deseados\n" "de su información personal." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "¿Actualizar los datos de usuario de LibreOffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "¿Quiere actualizar también los datos de usuario de LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Se requiere una contraseña" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Contraseña incorrecta... Inténtelo de nuevo." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Contraseña:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Cancelar" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "Aceptar" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Escriba su contraseña para\n" "realizar tareas administrativas." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "La aplicación «%s» le permite\n" "modificar partes esenciales del sistema." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Configuración de usuario mínima" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot permite a los usuarios actualizar fácilmente la información de " "contacto personal. Con Mugshot los usuarios son capaces de:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Configurar la imagen de usuario que se muestra en la pantalla de inicio de " "sesión y, opcionalmente, sincronizar esta imagen con el icono de usuario de " "Pidgin" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Configurar los datos de usuario almacenados en /etc/passwd (accesibles con " "la orden finger) y, opcionalmente, sincronizarlos con la información de " "contacto de LibreOffice" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" "Esta versión incluye una serie de mejoras en la calidad del código, " "corrección de errores y traducciones. Mugshot ahora se puede construir y " "ejecutar en un entorno chroot mínimo." #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" "Esta versión estable añade soporte para las últimas tecnologías de GTK y " "GStreamer." #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" "Esta versión de desarrollo restaura la funcionalidad del diálogo de la " "cámara con las versiones de software recientes." #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" "Esta versión de desarrollo corrige un gran número de errores de versiones " "anteriores. Las propiedades de usuario que no se pueden editar ahora están " "restringidas a los usuarios administradores." #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "Esta versión de desarrollo actualiza el diálogo de la cámara para usar " "Cheese y Clutter para mostrar y capturar la imagen de la cámara." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Esta versión estable mejora la funcionalidad de Mugshot para los usuarios de " "LDAP e incluye el último SudoDialog, que mejora la apariencia y la facilidad " "de uso del diálogo de la contraseña." mugshot-0.4.2/po/eu.po0000664000175000017500000001341513517364451016543 0ustar bluesabrebluesabre00000000000000# Basque translation for mugshot # Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2014. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2014-07-14 23:39+0000\n" "Last-Translator: Adolfo Jayme \n" "Language-Team: Basque \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Niri buruz" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Erdian" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Ezkerrean" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Eskuinean" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Saiatu berriz" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "" #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "" #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "" #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "" #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "" #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/fi.po0000664000175000017500000001645613517364451016540 0ustar bluesabrebluesabre00000000000000# Finnish translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2014-09-05 08:16+0000\n" "Last-Translator: Pasi Lallinaho \n" "Language-Team: Finnish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Omat tiedot" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Muuta profiilikuvaasi ja yhteystietojasi" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Kuvankaappaus - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Esikatselu" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Keskitetty" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Vasen" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Oikea" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Rajaus" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Valitse oletuskuvista..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Kuvankaappaus kamerasta..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Selaa…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Valokuva" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Etunimi" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Sukunimi" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Nimikirjaimet" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Kotipuhelin" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Sähköpostiosoite" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Työpuhelin" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Faksi" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Valitse kuva..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" "Näytä virheilmoituset (-vv näyttää myös mugshot_libin virheilmoitukset)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Yritä uudelleen" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Todennus keskeytetty." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Tunnistus epäonnistui." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Muutoksia tallennettaessa tapahtui virhe." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Käyttäjätietoja ei päivitetty." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Päivitä Pidginin tuttavakuvake?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Haluatko päivittää myös Pidginin tuttavakuvakkeen?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Syötä salasanasi muuttaaksesi käyttäjätietojasi." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Tämä on turvallisuustoimenpide, jolla estetään ei-toivotut päivitykset\n" "henkilökohtaisiin tietoihisi." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Päivitä LibreOfficen käyttäjätiedot?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Haluatko päivittää myös LibreOfficen käyttäjätietosi?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Salasana vaaditaan" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Väärä salasana... yritä uudelleen." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Salasana:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Peruuta" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Syötä salasanasi\n" "suorittaaksesi ylläpidollisia toimia." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Sovellus '%s' sallii sinun\n" "muokata järjestelmäsi olennaisia osia." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Kevyt käyttäjätietojen muokkain" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshotin avulla käyttäjät voivat päivittää henkilökohtaisia yhteystietoja " "helposti. Mugshotin avulla käyttäjät voivat:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Asettaa tilin valokuvan, joka näytetään kirjautumisikkunassa ja " "valinnaisesti synkronoida tämän kuvan Pidginin kaverikuvakkeekseen" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Asettaa tilin ominaisuuksia, joita säilytetään tiedostossa /etc/passwd " "(käytettävissä finger-komennolla) ja valinnaisesti synkronoida nämä tiedot " "LibreOfficen tietojen kanssa" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/fr.po0000664000175000017500000001770513517364451016547 0ustar bluesabrebluesabre00000000000000# French translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2016-02-15 13:15+0000\n" "Last-Translator: Benoit THIBAUD \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "À mon sujet" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Configurer les informations de contact et la photo de votre profil" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Prendre une photo - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Aperçu" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Au centre" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "À gauche" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "À droite" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Recadrer" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Sélectionner dans la collection..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Prendre une photo..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Parcourir…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Prénom" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Nom" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Initiales" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Téléphone domicile" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Courriel" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Téléphone bureau" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Sélectionner une photo..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Afficher les messages de débogage (-vv débogue aussi mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Réessayer" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Authentification annulée." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "L'authentification a échoué." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Une erreur est survenue lors de l'enregistrement des changements." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Les informations utilisateur n’ont pas été mises à jour." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Mettre à jour l’avatar dans Pidgin ?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Souhaitez-vous également mettre à jour votre avatar dans Pidgin ?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "" "Saisissez votre mot de passe afin de modifier les informations utilisateur." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Il s’agit d’une mesure de sécurité visant à prévenir les\n" "modifications indésirées de vos informations personnelles." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Mettre à jour les informations utilisateur de LibreOffice ?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "" "Souhaitez-vous également mettre à jour les informations utilisateur dans " "LibreOffice ?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Mot de passe requis" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Mot de passe incorrect... Veuillez réessayer." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Mot de passe :" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Annuler" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Saisissez votre mot de passe afin\n" "d’effectuer des tâches administratives." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "L’application « %s » vous permet de modifier\n" "des éléments essentiels de votre système." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Configuration d'utilisateur minimale" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot permet aux utilisateurs de mettre facilement à jour leurs " "coordonnées personnelles. Avec Mugshot, les utilisateurs peuvent :" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Définir la photo qui sera affichée pour la connexion à leur session et " "éventuellement synchroniser cette photo avec l'icône de leur compte Pidgin." #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Définir les détails de leur compte dans /etc/passwd (utilisable avec la " "commande finger) and éventuellement le synchroniser avec leurs informations " "de contact LibreOffice." #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "Cette version de développement améliore le dialogue de la caméra visant à " "utiliser Cheese et Clutter pour afficher et capturer le retour de la caméra." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Cette version stable améliore les fonctionnalités de Mugshot pour les " "utilisateurs LDAP et inclut le dernier SudoDialog, qui améliore l'apparence " "et l'ergonomie de la fenêtre de dialogue du mot de passe." mugshot-0.4.2/po/gl.po0000664000175000017500000001350313517364451016532 0ustar bluesabrebluesabre00000000000000# Galician translation for mugshot # Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2014. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2014-07-14 23:37+0000\n" "Last-Translator: Adolfo Jayme \n" "Language-Team: Galician \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Acerca de min" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Configure a imaxe do seu perfil e a información de contacto" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Previsualización" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "" #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "" #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "" #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "" #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "" #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/hr.po0000664000175000017500000001460613517364451016546 0ustar bluesabrebluesabre00000000000000# Croatian translation for mugshot # Copyright (c) 2016 Rosetta Contributors and Canonical Ltd 2016 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2016. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2018-03-03 16:44+0000\n" "Last-Translator: zvacet \n" "Language-Team: Croatian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Konfigurirajte sliku profila i pojedinosti kontakta" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Ime" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Prezime" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Inicijali" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Kućni telefon" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Email adresa" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Uredski telefon" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Odaberite fotografiju..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Ovjera otkazana." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "" #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Došlo je do pogreške prilikom spremanja izmjena." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Pojedinosti korisnika nisu ažurirane." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Ažurirati Pidgin buddy ikonu?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Želite li također ažurirati svoju Pidgin buddy ikonu?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Unesite vašu lozinku za izmjenu korisničkih pojedinosti." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Ovo je sigurnosna mjera za sprječavanje neželjenih ažuriranja\n" "vaših osobnih informacija." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Ažurirati LibreOffice korisničke detalje?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Želite li također ažurirati vaše korisničke detalje u LibreOffice-u?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Laka korisnička konfiguracija" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/is.po0000664000175000017500000001361713517364451016551 0ustar bluesabrebluesabre00000000000000# Icelandic translation for mugshot # Copyright (c) 2015 Rosetta Contributors and Canonical Ltd 2015 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2015. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2015-04-23 22:55+0000\n" "Last-Translator: Björgvin Ragnarsson \n" "Language-Team: Icelandic \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Um mig" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Forsýning" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Vinstri" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Hægri" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Sníða til" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Velja..." #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Upphafsstafir" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Heimasími" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Netfang" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Skrifstofusími" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Velja mynd..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "" #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "" #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "" #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "" #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "" #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/it.po0000664000175000017500000001700413517364451016544 0ustar bluesabrebluesabre00000000000000# Italian translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2014-09-09 08:45+0000\n" "Last-Translator: Man from Mars \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Informazioni personali" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Configura l'immagine del profilo e i dettagli del contatto" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Cattura - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Anteprima" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Centra" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Sinistra" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Destra" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Ritaglia" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Seleziona tra le immagini stock..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Cattura dalla webcam..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Esplora..." #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Nome" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Cognome" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Iniziali" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Telefono di casa" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Indirizzo Email" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telefono dell'ufficio" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Seleziona una foto..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Mostra i messaggi di debug (-vv analizza anche mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Riprova" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Autenticazione annullata." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Autenticazione fallita." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Si è verificato un errore nel salvataggio delle modifiche." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "I dettagli dell'utente non sono stati aggiornati." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Aggiornare l'avatar di Pidgin?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Vuoi aggiornare anche l'avatar di Pidgin?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Digitare la password per cambiare le informazioni utente." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Questa è una misura di sicurezza per evitare aggiornamenti\n" "indesiderati alle tue informazioni." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Aggiornare le informazioni utente di LibreOffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Vuoi aggiornare anche le informazioni utente in LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Password richiesta" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Password non corretta... riprova." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Password:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Annulla" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Inserisci la password per eseguire\n" "operazioni da amministratore." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "L'applicazione '%s' ti permette\n" "di modificare parti essenziali del tuo sistema." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Semplice configurazione degli utenti" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot consente agli utenti di aggiornare facilmente le informazioni " "personali di contatto. Con Mugshot, gli utenti possono:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Impostare la foto dell'account mostrata al login ed opzionalmente " "sincronizzare questa foto con il proprio avatar Pidgin" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Impostare i dettagli dell'account salvati in /etc/passwd (utilizzabile con " "il comando finger) ed opzionalmente sincronizzarli con le informazioni di " "contatto di LibreOffice" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Questa release stabile migliore le funzionalità di Mugshot per utenti LDAP " "ed include il più recente SudoDialog, migliorando l'aspetto e l'usabilità " "della finestra di immissione password." mugshot-0.4.2/po/ja.po0000664000175000017500000001567613517364451016537 0ustar bluesabrebluesabre00000000000000# Japanese translation for mugshot # Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2014. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2014-03-30 02:53+0000\n" "Last-Translator: Ikuya Awashiro \n" "Language-Team: Japanese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "個人情報" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "プロファイルの画像と連絡先の詳細を設定" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "キャプチャ - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "プレビュー" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "中央" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "左" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "右" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "切り抜き" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "ストックから選択..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "カメラでキャプチャ..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "参照…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "イニシャル" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "電話番号" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "メールアドレス" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "勤務先の電話番号" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "FAX" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "写真の選択..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "デバッグメッセージの表示 (-vv debugs mugshot_lib でも可)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "再試行" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "" #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "" #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "" #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "ユーザーの詳細はアップデートされませんでした。" #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Pigdinの仲間アイコン" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Pigdinの仲間アイコンもアップデートしますか?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "ユーザーの詳細を変更するためにパスワードを入力してください。" #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "個人情報を希望していないのにアップデート\n" "されないようにするセキュリティの方針です。" #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "LibreOfficeのユーザー詳細" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "LibreOfficeのユーザー詳細もアップデートしますか?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "パスワードが正しくありません... 再入力してください。" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "パスワード:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "キャンセル" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "管理者権限が必要な操作を実行するため\n" "パスワードを入力してください。" #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "アプリケーション '%s' はシステムの\n" "主要な部分を修正しました。" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/lt.po0000664000175000017500000002043613517364451016552 0ustar bluesabrebluesabre00000000000000# Lithuanian translation for mugshot # Copyright (c) 2015 Rosetta Contributors and Canonical Ltd 2015 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2015. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2018-08-11 12:52+0000\n" "Last-Translator: Moo \n" "Language-Team: Lithuanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Apie mane" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Konfigūruokite savo profilį bei kontaktinius duomenis" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Fotografuoti - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Peržiūra" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Centras" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Kairė" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Dešinė" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Apkirpti" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Pasirinkti iš esamų..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Fotografuoti per kamerą..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Naršyti…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Vardas" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Pavardė" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Inicialai" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Namų telefonas" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "El. pašto adresas" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Biuro telefonas" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Faksas" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Pasirinkite nuotrauką..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Rodyti derinimo pranešimus (-vv debugs mugshot_lib also)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Kartoti" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Tapatybės nustatymas atšauktas." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Nepavyko nustatyti tapatybės." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Įvyko klaida, įrašant pakeitimus." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Naudotojo duomenys nebuvo atnaujinti." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Atnaujinti Pidgin naudotojo piktogramą?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Ar norėtumėte tuo pačiu atnaujinti savo Pidgin naudotojo piktogramą?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "" "Norėdami keisti išsamesnę naudotojo informaciją, įveskite slaptažodį." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Tai yra saugumo priemonė, skirta apsaugoti nuo nepageidaujamų asmeninės " "informacijos atnaujinimų." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Atnaujinti išsamesnę LibreOffice naudotojo informaciją?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "" "Ar norėtumėte tuo pačiu atnaujinti išsamesnę savo naudotojo informaciją " "programoje LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Reikalingas slaptažodis" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Neteisingas slaptažodis... bandykite dar kartą." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Slaptažodis:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Atsisakyti" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "Gerai" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Įveskite slaptažodį, kad galėtumėte\n" "atlikti administravimo užduotis." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Programa '%s' leidžia jums\n" "modifikuoti svarbiausias jūsų sistemos dalis." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Supaprastintas naudotojo konfigūravimas" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot įgalina naudotojus lengvai atnaujinti asmeninę kontaktinę " "informaciją. Su Mugshot, naudotojai gali:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Nustatyti, prisijungimo metu rodomą, paskyros nuotrauką ir pasirinktinai " "sinchronizuoti šią nuotrauką su savo Pidgin naudotojo paveiksliuku" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Nustatyti išsamesnę paskyros informaciją, laikomą /etc/passwd (naudojama su " "finger komanda) ir pasirinktinai sinchronizuoti su LibreOffice kontaktine " "informacija." #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" "Į šią laidą įeina daugybė kodo kokybės patobulinimų, klaidų ištaisymų ir " "vertimų. Dabar Mugshot gali būti sukurta ir paleista minimalioje chroot " "aplinkoje." #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" "Ši stabili laida prideda naujausių GTK ir GStreamer technologijų palaikymą." #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" "Ši kūrimo laida atkuria kameros dialogo funkcionalumą su paskiausiomis " "programinės įrangos versijomis." #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" "Ši kūrimo laida ištaiso daugybę ankstesnios laidos klaidų. Naudotojo " "savybės, kurių negalima redaguoti, dabar yra prieinamos tik naudotojams-" "administratoriams." #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "Ši kūrimo laida pagerina, kameros rodymui ir fotografavimui skirtą, kameros " "dialogą, naudojimui su Cheese ir Clutter." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Ši stabili laida patobulina Mugshot funkcionalumą LDAP naudotojams ir " "įtraukia vėliausią SudoDialogą, patobulindama slaptažodžio dialogo išvaizdą " "ir patogumą naudoti." mugshot-0.4.2/po/nb.po0000664000175000017500000001476713517364451016544 0ustar bluesabrebluesabre00000000000000# Norwegian Bokmal translation for mugshot # Copyright (c) 2018 Rosetta Contributors and Canonical Ltd 2018 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2018. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2018-11-30 22:22+0000\n" "Last-Translator: Erlend Østlie \n" "Language-Team: Norwegian Bokmal \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Om meg" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Endre ditt profilbilde og kontakt-detaljer" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Forhåndsvisning" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Midtstilt" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Venstrejustert" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Høyrejustert" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Beskjær" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Ta bilde med kamera ..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Bla gjennom …" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Fornavn" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Etternavn" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Initialer" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Hjemmetelefon" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Epostadresse" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Kontortelefon" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Faks" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Velg et bilde ..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Prøv på nytt" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Autentisering avbrutt." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Autentisering mislyktes." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "En feil oppsto ved lagring av endringene." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Bruker-informasjonen ble ikke oppdatert." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Skriv inn passordet ditt for å endre bruker-informasjon." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Vil du oppdaterere bruker-informasjonen til LibreOffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Ønsker du også å oppdatere bruker-informasjonen din i LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Passord kreves" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Feil passord ... prøv igjen." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Passord:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Avbryt" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Skriv inn passord for å\n" "utføre administrative oppgaver." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Enkel bruker-konfigurering" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/nl.po0000664000175000017500000001724013517364451016543 0ustar bluesabrebluesabre00000000000000# Dutch translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2016-03-23 11:22+0000\n" "Last-Translator: Pjotr12345 \n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Over mij" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Stel uw profielafbeelding en contactdetails in" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Pasfoto maken" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Voorbeeld" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Midden" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Links" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Rechts" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Bijsnijden" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Kies uit voorraad..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Maak opname met camera..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Bladeren…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Pasfoto" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Voornaam" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Achternaam" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Voorletters" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Telefoon thuis" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "E-mailadres" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telefoon op werk" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Kies een foto..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Toon foutopsporingsberichten (-vv toont die ook voor mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Probeer opnieuw" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Authenticatie geannuleerd." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Authenticatie is mislukt." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Er is een fout opgetreden bij het opslaan van de wijzigingen." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Gebruikersdetails werden niet bijgewerkt." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Pictogram voor Pidgin-vriend bijwerken?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Wilt u ook uw pictogram bijwerken voor Pidgin-vriend?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Voer uw wachtwoord in om gebruikersdetails te wijzigen." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Dit is een veiligheidsmaatregel ter voorkoming van\n" "ongewenste wijzigingen in uw persoonlijke informatie." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Gebruikerdetails voor Libre Office bijwerken?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Wilt u ook uw gebruikerdetails bijwerken voor Libre Office?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Wachtwoord vereist" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Onjuist wachtwoord.... Probeer het a.u.b. opnieuw." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Wachtwoord:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Annuleren" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Voer uw wachtwoord in\n" "om beheerstaken uit te\n" "voeren." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "De toepassing '%s' laat u\n" "essentiële delen van uw\n" "systeem wijzigen." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Lichtgewicht hulpmiddel voor gebruikersinstellingen" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot stelt gebruikers in staat om eenvoudig persoonlijke " "contactpersooninformatie bij te werken. Met Mugshot kunnen gebruikers:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Stel de accountfoto in die getoond wordt bij aanmelding en synchroniseer " "deze foto desgewenst met hun Pidgin-pictogram" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Stel accountbijzonderheden in die zijn opgeslagen in /etc/passwd (te " "gebruiken met de opdracht 'finger') en synchroniseer desgewenst met hun " "contactpersooninformatie in Libre Office." #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "Deze ontwikkelversie waardeert de cameradialoog op om Cheese en Clutter te " "gebruiken voor het vertonen en vastleggen van de camera-invoer." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Deze stabiele versie verbetert de functionaliteit van Mugshot voor LDAP-" "gebruikers, en bevat de nieuwste SuDoDialog, wat een verbetering is van het " "uiterlijk en de bruikbaarheid van de wachtwoorddialoog." mugshot-0.4.2/po/pl.po0000664000175000017500000001730313517364451016545 0ustar bluesabrebluesabre00000000000000# Polish translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # Michał Olber , 2014. # Piotr Sokół , 2014. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2016-10-23 11:30+0000\n" "Last-Translator: Marcin Mikołajczak \n" "Language-Team: polski <>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Informacje o użytkowniku" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Konfiguruje obraz użytkownika i szczegóły kontaktu" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Przechwytywanie - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Podgląd" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Wyśrodkowane" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Do lewej" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Do prawej" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Kadrowanie" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Wybierz z galerii…" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Przechwyć z kamery…" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Przeglądaj…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Imię" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Nazwisko" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Inicjały" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Telefon domowy" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Adres email" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telefon służbowy" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Faks" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Wybór obrazu" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" "Wypisuje informacje diagnozowania błędów (-vv diagnozuje błędy mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Ponów" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Anulowano uwierzytelnienie." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Uwierzytelnienie się nie powiodło." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Wystąpił błąd podczas zapisywania zmian." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Informacje o użytkowniku nie zostały uaktualnione." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Ikona użytkownika programu Pidgin" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Uaktualnić także ikonę użytkownika w programie Pidgin?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Proszę wprowadzić hasło, aby zmienić informacje o użytkowniku." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Jest to krok zabezpieczający przed niechcianymi uaktualnieniami\n" "osobistej bazy danych." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Informacje użytkownika programu LibreOffice" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Uaktualnić także informacje użytkownika w programie LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Wymagane hasło" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Nieprawidłowe hasło. Proszę spróbować ponownie." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Hasło:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Anuluj" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "Proszę wprowadzić hasło, aby wykonać zadania administracyjne." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Program „%s” pozwala na\n" "modyfikowanie istotnych elementów systemu." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Lekka konfiguracja użytkownika" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot umożliwia użytkownikom łatwą aktualizację osobistych informacji " "kontaktowych. Z Mugshot użytkownicy mogą:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Ustawić obraz konta wyświetlany podczas logowania i opcjonalnie " "synchronizowany ze swoją ikoną dla znajomych w Pidgin" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Ustawić szczegóły konta przechowywane w /etc/passwd (dogodne przy ręcznych " "poleceniach) i opcjonalnie synchronizowane ze swoimi informacjami " "kontaktowymi w LibreOffice" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" "To wydanie rozwojowe naprawia liczne błędy z poprzednich wydań. Ustawienia " "użytkownika które nie mogą być edytowane są teraz dostępne wyłącznie dla " "administratorów." #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "To wydanie rozwojowe ulepszą okno kamery, aby używało Cheese i Clutter do " "wyświetlania i przechwytywania obrazu kamery." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/pt.po0000664000175000017500000001732713517364451016563 0ustar bluesabrebluesabre00000000000000# Portuguese translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2015-09-09 16:42+0000\n" "Last-Translator: David Pires \n" "Language-Team: Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Sobre Mim" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Configure a sua imagem de perfil e detalhes de contato" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Captura - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Pré-visualização" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Centrar" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Esquerda" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Direita" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Cortar" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Selecione a partir do stock..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Capturar a partir da câmera..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Procurar..." #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Nome" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Apelido" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Initiciais" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Telefone de casa" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Endereço de email" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telefone do escritório" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Selecione uma fotografia..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Mostrar mensagens de depuração (-vv debugs mugshot_lib also)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Tentar novamente" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Autenticação cancelada." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Falha na autenticação." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Ocorreu um erro ao gravar as alterações." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Os detalhes do utilizador não foram atualizados." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Atualizar o ícone de amigo no Pidgin?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Gostaria também de atualizar o seu ícone de amigo no Pidgin?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Inserir a sua senha para alterar os detalhes do utilizador." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "É uma medida de segurança para evitar alterações indesejadas\n" "às suas informações pessoais." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Atualizar os detalhes de utilizador do LibreOffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "" "Gostaria também de atualizar os seus detalhes de utilizador do LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Necessário senha" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Senha incorreta... tente novamente." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Senha:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Cancelar" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Inserir a sua senha para\n" "executar tarefas administrativas." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "A aplicação '%s' permite-lhe\n" "modificar partes essenciais do seu sistema." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Configuração de utilizador leve" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "O Mugshot permite aos utilizadores actualizar facilmente as informações de " "contato pessoal. Com o Mugshot, os utilizadores são capazes de:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Definir a fotografia exibida na conta de início de sessão e opcionalmente " "sincronizar essa fotografia com o seu ícone de amigo no Pidgin" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Defina os detalhes da conta armazenados em /etc/passwd (utilizáveis ​​com o " "comando finger) e opcionalmente sincronize com as suas informações de " "contato do LibreOffice" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "Esta versão de desenvolvimento atualiza o diálogo da câmera para usar o " "Cheese e o Clutter para exibir e capturar a alimentação da câmera." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Esta versão estável melhora a funcionalidade do Mugshot para utilizadores " "LDAP, e inclui o mais recente SudoDialog, melhorando a aparência e " "usabilidade do diálogo da senha." mugshot-0.4.2/po/pt_BR.po0000664000175000017500000001601213517364451017134 0ustar bluesabrebluesabre00000000000000# Brazilian Portuguese translation for mugshot # Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2013. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2016-02-18 22:01+0000\n" "Last-Translator: Adriano Ramos \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Sobre Mim" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Configure sua imagem de perfil e dados da conta" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Captura - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Visualizar" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Centralizado" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "À Esquerda" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "À Direita" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Cortar" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Escolha uma foto..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Câmera..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Procurar nos arquivos..." #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Nome" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Sobrenome" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Iniciais" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Telefone Residencial" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Email" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telefone Comercial" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Escolha uma foto..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Mostrar mensagens de depuração (-vv debugs mugshot_lib also)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Repetir" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Autenticação cancelada." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Falha na autenticação." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Ocorreu um erro ao salvar as alterações." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Informações do usuário não foram atualizadas." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Atualizar imagem do Pidgin?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Gostaria também de atualizar sua imagem do Pidgin?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Insira sua senha para alterar as informações de usuário." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Essa é uma medida de segurança para prevenir mudanças indesejadas\n" "em suas informações pessoais." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Atualizar dados de usuário do LibreOffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Gostaria também de atualizar seus dados de usuário no LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Senha Requerida" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Senha incorreta... tente novamente." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Senha:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Cancelar" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Insira sua senha para\n" "realizar tarefas administrativas." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "A aplicação '%s' permite que você\n" "modifique partes essenciais do sistema." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Esta versão estável melhora a funcionalidade Mugshot para usuários LDAP e " "inclui a mais recente versão do SudoDialog, melhorando a aparência e " "usabilidade da caixa de diálogo de senha." mugshot-0.4.2/po/ro.po0000664000175000017500000001350013517364451016545 0ustar bluesabrebluesabre00000000000000# Romanian translation for mugshot # Copyright (c) 2018 Rosetta Contributors and Canonical Ltd 2018 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2018. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2018-02-04 13:48+0000\n" "Last-Translator: Ciprian \n" "Language-Team: Romanian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Despre mine" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Configurați imaginea de profil și detaliile de contact" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Stânga" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Dreapta" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Decupare" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "" #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "" #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "" #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "" #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "" #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "" #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/ru.po0000664000175000017500000002111213517364451016551 0ustar bluesabrebluesabre00000000000000# Russian translation for mugshot # Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2014. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2015-08-18 12:53+0000\n" "Last-Translator: Yanpas \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Обо мне" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Настроить изображение профиля и контактную информацию" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Захват - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Предварительный просмотр" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "По центру" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Слева" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Справа" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Обрезать" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Выбрать из набора..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Захватить с камеры..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Обзор…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Имя" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Фамилия" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Инициалы" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Домашний телефон" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Электронная почта" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Рабочий телефон" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Факс" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Выбрать фото..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Показывать сообщения отладки (-vv покажет сообщения mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Повторить" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Аутентификация отменена." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Сбой аутентификации." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Возникла ошибка при сохранении изменений." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Данные пользователя не были обновлены." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Обновить аватар в Pidgin?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Обновить также ваш аватар в Pidgin?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Введите ваг пароль для изменения данных пользователя." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Это мера безопасности для предотвращения нежелательных\n" "обновлений вашей персональной информации." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Обновить данные пользователя в LibreOffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Обновить также ваши данные пользователя в LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Требуется пароль" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Неверный пароль... Попробуйте еще." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Пароль:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Отмена" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Введите ваш пароль для выполнения\n" "административных задач." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Приложения %s' позволит вам\n" "модифицировать серьезную часть системы." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Ресусрсоэффективная (Lightweight) пользовательская конфигурация." #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot позволяет пользователям легко обновлять личную контактную информацию " ". С Mugshot , пользователи могут:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Установить фото профиля, отображаемое в окне входа, и опционально " "синхронизировать это фото с Pidgin." #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Установить детали профиля, хранимые в /etc/passwd (удобно в использовании с " "командой finger), и опционально синхронизировать эту контактную информацию с " "Libreoffice." #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Это стабильный релиз улучшает функциональность Mugshot для пользователей " "LDAP , и включает в себя последнюю версию SudoDialog , улучшения внешнего " "вида и диалогового окна ввода пароля." mugshot-0.4.2/po/sk.po0000664000175000017500000001705413517364451016552 0ustar bluesabrebluesabre00000000000000# Slovak translation for mugshot # Copyright (c) 2015 Rosetta Contributors and Canonical Ltd 2015 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2015. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2015-12-04 13:28+0000\n" "Last-Translator: Miro Janosik \n" "Language-Team: Slovak \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "O mne" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Upravte si svoj profilový obrázok a kontaktné informácie" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Zachytenie obrázka - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Náhľad" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Na stred" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Vľavo" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Vpravo" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Orezať" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Vybrať z predvolených..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Zachytiť z kamery..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Vybrať..." #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Krstné meno" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Priezvisko" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Iniciály" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Telefón domov" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "E-mailová adresa" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telefón do práce" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Vybrať fotografiu..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Zobraz ladiace správy (-vv pre ladenie aj mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Skúsiť znova" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Overenie totožnosti zrušené." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Overenie totožnosti zlyhalo." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Chyba pri ukladaní zmien." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Informácie užívateľa neboli zmenené." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Upraviť aj ikonu v Pidgine?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Má sa upraviť Vaša ikona v zozname priateľov v Pidgine?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Pre zmenu údajov zadajte vaše heslo." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Toto je bezpečnostný prvok ktorý má zabrániť nechceným\n" "zmenám vo vašich súkromných údajoch." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Nastaviť užívateľské informácie aj v LibreOffice?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "" "Chcete aby sa tieto užívateľské informácie nastavili aj v LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Požadované heslo" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Heslo nesprávne... skúste znovu." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Heslo:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Zrušiť" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "Áno" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Pre tento administratívny\n" "úkon musíte zadať vaše heslo." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Program '%s' Vám dovoľuje\n" "meniť dôležité časti Vášho systému." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Hlavné nastavenia užívateľa" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "S Mugshot si môže používateľ jednoducho upraviť kontaktné údaje. S Mugshot " "používatelia môžu:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Nastaviť obrázok svojho účtu ktorý sa zobrazí pri prihlasovaní. a možnosť ho " "synchronizovať s ikonou v Pidgine" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Nastaviť údaje účtu uložené v /etc/passwd (pre použitie s príkazom finger) a " "možnosť synchronizovať ich s kontaktnými údajmi v LibreOffice" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "Táto verzia programu zlepšuje kamerové okno použitím knižníc Cheese a " "Clutter na zobrazenie obrazu z kamery." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Táto stabilná verzia vylepšuje funkcionalitu Mugshotu pre užívateľov LDAP, " "obsahuje nový SudoDialog, zlepšuje vzhľad a použiteľnosť dialógu na zadanie " "hesla." mugshot-0.4.2/po/sl.po0000664000175000017500000001542313517364451016551 0ustar bluesabrebluesabre00000000000000# Slovenian translation for mugshot # Copyright (c) 2015 Rosetta Contributors and Canonical Ltd 2015 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2015. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2015-08-19 14:47+0000\n" "Last-Translator: Dražen Matešić \n" "Language-Team: Slovenian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "O meni" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Nastavite svojo sliko profila in podrobnosti stika" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Zajem - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Predogled" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Sredinsko" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Levo" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Desno" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Obrez" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Zajem iz kamere ..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Prebrskaj ..." #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Ime" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Priimek" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Začetnice" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Domači telefon" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "E-poštni naslov" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Telefon v pisarni" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Faks" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Izberite sliko ..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Pokaži sporočila razhroščevanja (-vv razhrošča tudi mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Poskusi znova" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Overitev preklicana." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Overitev spodletela." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Napaka se je zgodila ob shranjevanju sprememb." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Podrobnosti uporabnika niso bili posodobljeni." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Posodobim ikono prijatelja Pidgin?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Ali želite posodobiti tudi svojo ikono prijatelja Pidgin?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Vpišite svoje geslo za spreminjanje podrobnosti uporabnika." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "To je varnosti ukrep, ki prepreči nezaželene posodobitve\n" "vaših osebnih podrobnosti." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Posodobim LibreOffice podrobnosti o uporabniku?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Ali želite posodobiti tudi podrobnosti uporabnika v LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Zahtevano je geslo" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Napačno geslo ... Poskusite znova." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Geslo:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Prekliči" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "V redu" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Vpišite svoje geslo\n" "za opravljanje skrbniških nalog." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Program '%s' vam dovoli\n" "spreminjanje ključnih delov vašega sistema." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/sr.po0000664000175000017500000001663513517364451016565 0ustar bluesabrebluesabre00000000000000# Serbian translation for mugshot # Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2014. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2015-02-28 20:54+0000\n" "Last-Translator: Саша Петровић \n" "Language-Team: Serbian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "О мени" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Подесите своју слику и податке о налогу" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Преглед" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Средина" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Лево" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Десно" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Опсеци" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "" #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Сними камерицом..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Разгледај…" #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Име" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Презиме" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "почетна слова" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Кућни телефон" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "Адреса е-поште" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Телефон на послу" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Факс" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Изаберите слику..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "" "Прикажи поруке о грешкама (-vv приказује и грешке библиотеке mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Покушај поново" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Потврда овлашћења је отказана." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Потврда овлашћења није успела." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "" #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Кориснички подаци нису освежени." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Да ли да освежим иконицу другара Пиџина?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Да ли желите да освежите своју иконицу другара у Пиџину?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Унесите своју лозинку ради промене корисничких података." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Ово је безбедносна мера ради спречавања нежељених промена\n" "личних података." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Да ли да освежим корисничке податке Либре Офиса?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Да ли би желели да освежите своје корисничке податке у Либре Офису?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Лозинка је нетачна... Покушајте поново." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Лозинка:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Откажи" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "У реду" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Унесите своју лозинку ради\n" "обављања управљачких задатака." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Програм „%s“ омогућава\n" "измену кључних делова система." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" mugshot-0.4.2/po/sv.po0000664000175000017500000002020513517364451016555 0ustar bluesabrebluesabre00000000000000# Swedish translation for mugshot # Copyright (c) 2015 Rosetta Contributors and Canonical Ltd 2015 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2015. # # Translators: # Påvel Nicklasson , 2015-2018 # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2018-08-11 07:21+0000\n" "Last-Translator: Påvel Nicklasson \n" "Language-Team: Swedish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" "Language: sv\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "Om mig" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "Ställ in din profilbild och kontaktuppgifter" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "Ta bild - Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "Förhandsvisning" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "Centrera" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "Vänster" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "Höger" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "Beskär" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "Välj från lager..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "Ta från kamera" #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "Bläddra..." #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "Förnamn" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "Efternamn" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "Initialer" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "Hemtelefon" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "E-postadress" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "Jobbtelefon" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "Fax" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "Välj ett foto..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "Visa felrättningsmeddelanden (-vv felrättar också mugshot_lib)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "Försök igen" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "Autentisering avbröts." #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "Autentisering misslyckades." #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "Ett fel inträffade då ändringar sparades." #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "Användaruppgifter uppdaterades inte." #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "Uppdatera Pidgin buddy ikon?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "Vill du också uppdatera din Pidgin buddy ikon?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "Ange ditt lösenord för att ändra användaruppgifter." #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "" "Detta är en säkerhetsåtgärd för att förhindra oönskade\n" "uppdateringar av din personliga information." #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "Uppdatera LibreOffice användaruppgifter?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "Vill du också uppdatera dina användaruppgifter i LibreOffice?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "Lösenord krävs" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "Felaktigt lösenord... försök igen." #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "Lösenord:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "Avbryt" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "OK" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "Ange ditt lösenord för att\n" "utföra administrativa uppgifter." #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "Programmet '%s' låter dig\n" "modifiera viktiga delar av ditt system." #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "Resurssnål användarinställning" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "" "Mugshot tillåter användare att enkelt uppdatera personlig " "kontaktinformation. Med Mugshot kan användare:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "" "Ställa in fotot för kontot som visas vid inloggning och valfritt " "synkronisera detta foto med sin Pidgin buddy ikon" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "Ställa in detaljer som sparas i /etc/passwd (går att använda med " "fingerkommandot) och valfritt synkronisera med sin kontaktinformation i " "LibreOffice" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "" "Denna utgåva inkluderar ett antal kodkvalitetsförbättringar, felrättningar, " "och översättningar. Mugshot kan nu byggas och köras i en minimal chroot-" "miljö." #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "" "Denna stabila utgåva lägger till stöd för de senaste GTK och GStreamer " "teknologierna." #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "" "Denna utvecklingsversion återställer kameradialogsfunktionalitet med senaste " "mjukvaruversioner." #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "" "Denna utvecklingsversion rättar till ett stort antal fel från föregående " "versioner. Användaregenskaper som inte kan redigeras är nu begränsade till " "administrativa användare." #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "" "Denna utvecklingsversion uppgraderar kameradialogen till att använda Cheese " "och Clutter för att visa och fånga kamerainmatning." #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "" "Denna stabila version förbättrar Mugshots funktionalitet för LDAP-användare, " "och inkluderar den senaste SudoDialog, som förbättrar utseende och " "användning av lösenordsdialogen." mugshot-0.4.2/po/zh_CN.po0000664000175000017500000001715113517364451017134 0ustar bluesabrebluesabre00000000000000# Chinese (Simplified) translation for mugshot # Copyright (c) 2018 Rosetta Contributors and Canonical Ltd 2018 # This file is distributed under the same license as the mugshot package. # FIRST AUTHOR , 2018. # msgid "" msgstr "" "Project-Id-Version: mugshot\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2018-08-08 05:13-0400\n" "PO-Revision-Date: 2018-09-10 01:38+0000\n" "Last-Translator: 玉堂白鹤 \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Launchpad-Export-Date: 2019-05-27 11:00+0000\n" "X-Generator: Launchpad (build 18968)\n" #: ../mugshot.desktop.in.h:1 msgid "About Me" msgstr "关于我" #: ../mugshot.desktop.in.h:2 msgid "Configure your profile image and contact details" msgstr "设置您的头像和详细联系信息" #: ../data/ui/CameraMugshotDialog.ui.h:1 msgid "Capture - Mugshot" msgstr "捕获- Mugshot" #: ../data/ui/MugshotWindow.ui.h:1 msgid "Preview" msgstr "预览" #: ../data/ui/MugshotWindow.ui.h:2 msgid "Center" msgstr "中心" #: ../data/ui/MugshotWindow.ui.h:3 msgid "Left" msgstr "左侧" #: ../data/ui/MugshotWindow.ui.h:4 msgid "Right" msgstr "右侧" #: ../data/ui/MugshotWindow.ui.h:5 msgid "Crop" msgstr "裁剪" #: ../data/ui/MugshotWindow.ui.h:6 msgid "Select from stock…" msgstr "从库存中选择..." #: ../data/ui/MugshotWindow.ui.h:7 msgid "Capture from camera…" msgstr "从相机捕捉..." #: ../data/ui/MugshotWindow.ui.h:8 msgid "Browse…" msgstr "浏览..." #: ../data/ui/MugshotWindow.ui.h:9 ../mugshot/MugshotWindow.py:567 msgid "Mugshot" msgstr "Mugshot" #: ../data/ui/MugshotWindow.ui.h:10 msgid "First Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:11 msgid "Last Name" msgstr "" #: ../data/ui/MugshotWindow.ui.h:12 msgid "Initials" msgstr "缩写" #: ../data/ui/MugshotWindow.ui.h:13 msgid "Home Phone" msgstr "家庭电话" #: ../data/ui/MugshotWindow.ui.h:14 msgid "Email Address" msgstr "电子邮件地址" #: ../data/ui/MugshotWindow.ui.h:15 msgid "Office Phone" msgstr "办公电话" #: ../data/ui/MugshotWindow.ui.h:16 msgid "Fax" msgstr "传真" #: ../data/ui/MugshotWindow.ui.h:17 msgid "Select a photo…" msgstr "选择一张照片..." #: ../mugshot/__init__.py:36 msgid "Show debug messages (-vv debugs mugshot_lib also)" msgstr "显示调试消息 (-vv debugs mugshot_lib also)" #. Set the record button to retry, and disable it until the capture #. finishes. #: ../mugshot/CameraMugshotDialog.py:268 msgid "Retry" msgstr "重试" #: ../mugshot/MugshotWindow.py:344 msgid "Authentication cancelled." msgstr "认证取消。" #: ../mugshot/MugshotWindow.py:347 msgid "Authentication failed." msgstr "认证失败。" #: ../mugshot/MugshotWindow.py:350 msgid "An error occurred when saving changes." msgstr "保存更改时发生错误。" #: ../mugshot/MugshotWindow.py:352 msgid "User details were not updated." msgstr "用户详细信息未更新。" #: ../mugshot/MugshotWindow.py:454 msgid "Update Pidgin buddy icon?" msgstr "更新Pidgin好友图标?" #: ../mugshot/MugshotWindow.py:455 msgid "Would you also like to update your Pidgin buddy icon?" msgstr "您还想更新你的Pidgin好友图标吗?" #: ../mugshot/MugshotWindow.py:568 msgid "Enter your password to change user details." msgstr "输入您的密码以更改用户详细信息。" #: ../mugshot/MugshotWindow.py:570 msgid "" "This is a security measure to prevent unwanted updates\n" "to your personal information." msgstr "这是一项安全措施,可防止对您的个人信息进行不必要的更新。" #: ../mugshot/MugshotWindow.py:837 msgid "Update LibreOffice user details?" msgstr "更新 LibreOffice 用户的详细信息?" #: ../mugshot/MugshotWindow.py:838 msgid "Would you also like to update your user details in LibreOffice?" msgstr "您还想更新 LibreOffice 中的用户详细信息吗?" #: ../mugshot_lib/SudoDialog.py:131 msgid "Password Required" msgstr "需要密码" #: ../mugshot_lib/SudoDialog.py:168 msgid "Incorrect password... try again." msgstr "密码不正确... 再试一次。" #: ../mugshot_lib/SudoDialog.py:178 msgid "Password:" msgstr "密码:" #. Buttons #: ../mugshot_lib/SudoDialog.py:189 msgid "Cancel" msgstr "取消" #: ../mugshot_lib/SudoDialog.py:192 msgid "OK" msgstr "确定" #: ../mugshot_lib/SudoDialog.py:213 msgid "" "Enter your password to\n" "perform administrative tasks." msgstr "" "请输入密码以便 \n" "执行管理任务。" #: ../mugshot_lib/SudoDialog.py:215 #, python-format msgid "" "The application '%s' lets you\n" "modify essential parts of your system." msgstr "" "应用程序 '%s' 想要修改\n" "系统的关键部分。" #: ../data/metainfo/mugshot.appdata.xml.in.h:1 msgid "Lightweight user configuration" msgstr "轻量级用户配置" #: ../data/metainfo/mugshot.appdata.xml.in.h:2 msgid "" "Mugshot enables users to easily update personal contact information. With " "Mugshot, users are able to:" msgstr "Mugshot 使用户可以轻松更新个人联系信息。 通过 Mugshot,用户可以:" #: ../data/metainfo/mugshot.appdata.xml.in.h:3 msgid "" "Set the account photo displayed at login and optionally synchronize this " "photo with their Pidgin buddy icon" msgstr "设置登录时显示的帐户照片,并可选择将此照片与其 Pidgin 好友图标同步" #: ../data/metainfo/mugshot.appdata.xml.in.h:4 msgid "" "Set account details stored in /etc/passwd (usable with the finger command) " "and optionally synchronize with their LibreOffice contact information" msgstr "" "设置存储在 / etc / passwd 中的帐户详细信息(可与 finger 命令一起使用),并可选择与其 LibreOffice 联系信息同步" #: ../data/metainfo/mugshot.appdata.xml.in.h:5 msgid "" "This release includes a number of code quality improvements, bug fixes, and " "translations. Mugshot can now be built and run in a minimal chroot " "environment." msgstr "此版本包括许多代码质量改进,错误修复和翻译。 Mugshot 现在可以在最小的 chroot 环境中构建和运行。" #: ../data/metainfo/mugshot.appdata.xml.in.h:6 msgid "" "This stable release adds support for the latest GTK and GStreamer " "technologies." msgstr "这个稳定版本增加了对最新 GTK 和 GStreamer 技术的支持。" #: ../data/metainfo/mugshot.appdata.xml.in.h:7 msgid "" "This development release restores camera dialog functionality that with " "recent software versions." msgstr "这个开发版本恢复了最近软件版本的相机对话框功能。" #: ../data/metainfo/mugshot.appdata.xml.in.h:8 msgid "" "This development release fixes a large number of bugs from previous " "releases. User properties that cannot be edited are now restricted to " "administrative users." msgstr "该开发版本修复了以前版本中的大量错误。 无法编辑的用户属性现在仅限于管理用户。" #: ../data/metainfo/mugshot.appdata.xml.in.h:9 msgid "" "This development release upgrades the camera dialog to use Cheese and " "Clutter to display and capture the camera feed." msgstr "该开发版本升级相机对话框以使用 Cheese 和 Clutter 来显示和捕捉相机输入。" #: ../data/metainfo/mugshot.appdata.xml.in.h:10 msgid "" "This stable release improves Mugshot functionality for LDAP users, and " "includes the latest SudoDialog, improving the appearance and usability of " "the password dialog." msgstr "这个稳定的版本改进了 LDAP 用户的 Mugshot 功能,并包含最新的 SudoDialog,改进了密码对话框的外观和可用性。" mugshot-0.4.2/setup.py0000664000175000017500000001715413517366256016677 0ustar bluesabrebluesabre00000000000000#!/usr/bin/python3 # -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- # Mugshot - Lightweight user configuration utility # Copyright (C) 2013-2019 Sean Davis # # This program is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranties of # MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program. If not, see . import os import sys import subprocess try: import DistUtilsExtra.auto except ImportError: sys.stderr.write("To build mugshot you need " "https://launchpad.net/python-distutils-extra\n") sys.exit(1) assert DistUtilsExtra.auto.__version__ >= '2.18', \ 'needs DistUtilsExtra.auto >= 2.18' def update_config(libdir, values={}): """Update the configuration file at installation time.""" filename = os.path.join(libdir, 'mugshot_lib', 'mugshotconfig.py') oldvalues = {} try: fin = open(filename, 'r') fout = open(filename + '.new', 'w') for line in fin: fields = line.split(' = ') # Separate variable from value if fields[0] in values: oldvalues[fields[0]] = fields[1].strip() line = "%s = %s\n" % (fields[0], values[fields[0]]) fout.write(line) fout.flush() fout.close() fin.close() os.rename(fout.name, fin.name) except (OSError, IOError): print(("ERROR: Can't find %s" % filename)) sys.exit(1) return oldvalues def move_icon_file(root, target_data): """Move the icon files to their installation prefix.""" old_icon_path = os.path.normpath(os.path.join(root, target_data, 'share', 'mugshot', 'media')) for icon_size in ['16x16', '22x22', '24x24', '48x48', '64x64', 'scalable']: if icon_size == 'scalable': old_icon_file = os.path.join(old_icon_path, 'mugshot.svg') else: old_icon_file = os.path.join(old_icon_path, 'mugshot_%s.svg' % icon_size.split('x')[0]) icon_path = os.path.normpath(os.path.join(root, target_data, 'share', 'icons', 'hicolor', icon_size, 'apps')) icon_file = os.path.join(icon_path, 'mugshot.svg') old_icon_file = os.path.realpath(old_icon_file) icon_file = os.path.realpath(icon_file) if not os.path.exists(old_icon_file): print(("ERROR: Can't find", old_icon_file)) sys.exit(1) if not os.path.exists(icon_path): os.makedirs(icon_path) if old_icon_file != icon_file: print(("Moving icon file: %s -> %s" % (old_icon_file, icon_file))) os.rename(old_icon_file, icon_file) # Media is now empty if len(os.listdir(old_icon_path)) == 0: print(("Removing empty directory: %s" % old_icon_path)) os.rmdir(old_icon_path) return icon_file def get_desktop_file(root, target_data): """Move the desktop file to its installation prefix.""" desktop_path = os.path.realpath(os.path.join(root, target_data, 'share', 'applications')) desktop_file = os.path.join(desktop_path, 'mugshot.desktop') return desktop_file def update_desktop_file(filename, script_path): """Update the desktop file with prefixed paths.""" try: fin = open(filename, 'r', -1, 'utf-8') fout = open(filename + '.new', 'w', -1, 'utf-8') for line in fin: if 'Exec=' in line: cmd = line.split("=")[1].split(None, 1) line = "Exec=%s" % os.path.join(script_path, 'mugshot') if len(cmd) > 1: line += " %s" % cmd[1].strip() # Add script arguments back line += "\n" fout.write(line) fout.flush() fout.close() fin.close() os.rename(fout.name, fin.name) except (OSError, IOError): print(("ERROR: Can't find %s" % filename)) sys.exit(1) def write_appdata_file(filename_in): filename_out = filename_in.rstrip('.in') cmd = ["intltool-merge", "-x", "-d", "po", filename_in, filename_out] print(" ".join(cmd)) subprocess.call(cmd, shell=False) # Update AppData with latest translations first. write_appdata_file("data/metainfo/mugshot.appdata.xml.in") class InstallAndUpdateDataDirectory(DistUtilsExtra.auto.install_auto): """Command Class to install and update the directory.""" def run(self): """Run the setup commands.""" DistUtilsExtra.auto.install_auto.run(self) print(("=== Installing %s, version %s ===" % (self.distribution.get_name(), self.distribution.get_version()))) if not self.prefix: self.prefix = '' if self.root: target_data = os.path.relpath(self.install_data, self.root) + \ os.sep target_pkgdata = os.path.join(target_data, 'share', 'mugshot', '') target_scripts = os.path.join(self.install_scripts, '') data_dir = os.path.join(self.prefix, 'share', 'mugshot', '') script_path = os.path.join(self.prefix, 'bin') else: # --user install self.root = '' target_data = os.path.relpath(self.install_data) + os.sep target_pkgdata = os.path.join(target_data, 'share', 'mugshot', '') target_scripts = os.path.join(self.install_scripts, '') # Use absolute paths target_data = os.path.realpath(target_data) target_pkgdata = os.path.realpath(target_pkgdata) target_scripts = os.path.realpath(target_scripts) data_dir = target_pkgdata script_path = target_scripts print(("Root: %s" % self.root)) print(("Prefix: %s\n" % self.prefix)) print(("Target Data: %s" % target_data)) print(("Target PkgData: %s" % target_pkgdata)) print(("Target Scripts: %s\n" % target_scripts)) print(("Mugshot Data Directory: %s" % data_dir)) values = {'__mugshot_data_directory__': "'%s'" % (data_dir), '__version__': "'%s'" % self.distribution.get_version()} update_config(self.install_lib, values) desktop_file = get_desktop_file(self.root, target_data) print(("Desktop File: %s\n" % desktop_file)) move_icon_file(self.root, target_data) update_desktop_file(desktop_file, script_path) DistUtilsExtra.auto.setup( name='mugshot', version='0.4.2', license='GPL-3+', author='Sean Davis', author_email='sean@bluesabre.org', description='lightweight user configuration utility', long_description='A lightweight user configuration utility. It allows you ' 'to easily set profile image and user details for your ' 'user profile and any supported applications.', url='https://github.com/bluesabre/mugshot', data_files=[('share/man/man1', ['mugshot.1']), ('share/metainfo/', ['data/metainfo/mugshot.appdata.xml'])], cmdclass={'install': InstallAndUpdateDataDirectory} )