Jump to content

Do not begin to migrate content here, it may be wiped without notice. More info.

WikiRevamp: Difference between revisions

From Debian wiki2025 alpha
import pandoc conversion
 
Page cleanup
Tag: 2017 source edit
 
Line 1: Line 1:
'''Note: this was generated using pandoc to convert MoinMoin's HTML rendering directly into mediawiki syntax. This is an experiment to check fidelity.'''
: '''''Note:''' This was generated using Pandoc to convert MoinMoin's parsed HTML output directly into MediaWiki syntax. This is an experiment to check fidelity.''
At DebConf25, a BOF was dedicated to discuss the state of the Debian Wiki.<ref name="etherpad">[https://salsa.debian.org/debconf-team/public/data/dc25/-/blob/main/etherpad/txt/146-debian-wiki-bof.txt Etherpad from the BOF].</ref> Known historical issues were summarized, in particular:
* The wiki relies on old software.
* There are no clear guidelines on the scope of what is and is not appropriate wiki content.
* There is no "default" license, most of the pages don't specify one and the few who do use a variety of them. As a consequence, most of the pages probably do not comply with DFSG.
* There is no clear way to handle communications about the wiki.


<div id="content" dir="ltr" lang="en">
In the following days, action was taken about this.
<span id="top" class="anchor"></span> <span id="line-1" class="anchor"></span>
In DebConf25, a BOF was dedicated to discuss the state of the Debian Wiki. Known historical issues were summarized, in particular: <span id="line-2" class="anchor"></span><span id="line-3" class="anchor"></span>


* the wiki relies on old software <span id="line-4" class="anchor"></span>
* there are no clear guidelines on the scope of wiki content <span id="line-5" class="anchor"></span>
* there is no &quot;default&quot; license, most of the pages don't specify one and the few who specify use a number of them. As a consequence, most of the pages probably do not comply with DFSG <span id="line-6" class="anchor"></span>
* there is no clear way to handle communications about the wiki <span id="line-7" class="anchor"></span><span id="line-8" class="anchor"></span>
See also: [https://salsa.debian.org/debconf-team/public/data/dc25/-/blob/main/etherpad/txt/146-debian-wiki-bof.txt Pad from the BOF] <span id="line-9" class="anchor"></span><span id="line-10" class="anchor"></span>
In the following days action was taken about this. <span id="line-11" class="anchor"></span><span id="line-12" class="anchor"></span>
<div class="table-of-contents">
Contents
# [[#Participating|Participating]]
# [[#Communication|Communication]]
# [[#Software_migration|Software migration]]
# [[#Content_licensing|Content licensing]]
## [[#Choice_of_license|Choice of license]]
## [[#Old_content|Old content]]
## [[#New_content|New content]]
# [[#Recommendations_and_mass-edits|Recommendations and mass-edits]]
## [[#Specific_mass-edits|Specific mass-edits]]
## [[#Responding_to_a_mass-edit|Responding to a mass-edit]]
# [[#Other_conversations|Other conversations]]
## [[#Debian_Bug_Links|Debian Bug Links]]
## [[#Migrating_user_accounts|Migrating user accounts]]
## [[#Boilerplate_page_headers|Boilerplate page headers]]
## [[#Translations|Translations]]
## [[#Editorial_tasks_.28e.g._CategoryProposedDeletion.29|Editorial tasks (e.g. CategoryProposedDeletion)]]
## [[#Scope|Scope]]
## [[#Milestones_and_gamification|Milestones and gamification]]
## [[#Automated_edits_with_bots|Automated edits with bots]]
## [[#Interwiki_links_vs_templates|Interwiki links vs templates]]
# [[#See_also|See also]]
</div>
<span id="line-13" class="anchor"></span><span id="line-14" class="anchor"></span>
== Participating ==
== Participating ==
 
Want to help? Start by reading the [[#Communication|very next section below]] on channels of communication. On IRC, you can ask how you can help and participate in discussions regarding migration and licensing.
<span id="line-15" class="anchor"></span><span id="line-16" class="anchor"></span>
Want to help? See the section below on channels of communication. On IRC, you can ask how you can help and participate in discussions regarding migration and licensing. <span id="line-17" class="anchor"></span><span id="line-18" class="anchor"></span>


== Communication ==
== Communication ==
 
The [https://lists.debian.org/debian-wiki debian-wiki mailing list] was created to discuss the Wiki, in addition to the [ircs://irc.oftc.net/debian-wiki #debian-wiki IRC channel]. If you want to participate, you are encouraged to reach via at least one, but ideally both of them, as discussions often occur on both at the same time.
<span id="line-19" class="anchor"></span><span id="line-20" class="anchor"></span>
The [https://lists.debian.org/debian-wiki debian-wiki@lists.debian.org] was created to discuss the Wiki, in addition to the [ircs://irc.oftc.net/debian-wiki #debian-wiki] IRC channel. If you want to participate, you are encouraged to subscribe to both means of communication as discussions often occur on either one. <span id="line-21" class="anchor"></span><span id="line-22" class="anchor"></span>


== Software migration ==
== Software migration ==
: '''''See also:''' The '''[https://lists.debian.org/debian-wiki/2025/07/threads.html#00007 MediaWiki next steps]''' thread on the debian-wiki mailing list''
During the BOF, the possibility was brought up of a migration to MediaWiki: a well-established wiki platform already being used by many others, like Wikipedia and the Arch Wiki.


<span id="line-23" class="anchor"></span><span id="line-24" class="anchor"></span>
Since then, @taavi has worked with DSA to setup mozart.debian.org, a machine running Debian Trixie that hosts a MediaWiki instance. It can be accessed at [https://wiki2025.debian.org/ wiki2025.debian.org].
During the BOF, the possibility of a migration to MediaWiki was brought up, a well-established wiki platform already being used by many others like Wikipedia and the Arch Wiki. <span id="line-25" class="anchor"></span><span id="line-26" class="anchor"></span>
 
Since then, @taavi has worked with DSA to setup mozart.d.o, a machine running Debian Trixie that hosts a MediaWiki instance. It can be accessed at https://wiki2025.debian.org/. '''Do not begin to migrate content here yet, it may be wiped without notice.''' <span id="line-27" class="anchor"></span><span id="line-28" class="anchor"></span>
 
Currently, the plan is to migrate most pages to the MediaWiki instance using tools being developed by @guillem and @maytham, which will retain edit history as well as convert content to MediaWiki syntax as a final edit at the end. This is achieved by accessing the internal file-based database for [[MoinMoin|MoinMoin]]. You can find a demonstration of this on [https://wiki2025.debian.org/wiki/FreedomBox FreedomBox (new wiki)], where [https://wiki2025.debian.org/index.php?title=FreedomBox&action=history edit history] has been retained. <span id="line-29" class="anchor"></span><span id="line-30" class="anchor"></span>


Current resources for conversion: <span id="line-31" class="anchor"></span>
:: <span style="font-size: 1.1rem; font-weight: 700; text-decoration: underline;">Do not begin to migrate content here yet, though, as it could still be erased without notice.</span>


* @guillem: [https://salsa.debian.org/guillem/mm2mw/ Debian fork of mm2mw Perl scripts] for migrating with both history and syntax conversion <span id="line-32" class="anchor"></span>
Currently, the plan is to migrate most pages to the MediaWiki instance using tools being developed by @guillem and @maytham, which will retain the edit history of each as well as convert the content to the MediaWiki syntax as a final stage at the end. This is achieved by accessing the internal file-based database for MoinMoin. You can find a demonstration of this at [[FreedomBox]] (in particular, the preservation of the [{{fullurl:FreedomBox|action=history}} edit history]), which is the end result of using the migration tools on the [https://wiki.debian.org/FreedomBox old wiki's page about the same software].
* @maytham: [https://salsa.debian.org/Maytha8/wiki-scripts/ shell scripts] to retain history but without syntax conversion <span id="line-33" class="anchor"></span>
* @sunilmohan: https://salsa.debian.org/sunilmohan/moinmoin_to_mediawiki/ (based on a tool to generate the [[FreedomBox|FreedomBox]] Manual PDF) <span id="line-34" class="anchor"></span>
* @AndrewSayers: [https://salsa.debian.org/AndrewSayers/mediawiki-recommendations/ mediawiki-recommendations] (a counterpart to the [[DebianWiki/WikiRevamp/Recommendations|recommendations page]]) <span id="line-35" class="anchor"></span><span id="line-36" class="anchor"></span>


The configuration and extensions for the new instance have not been finalised yet. @maytham is [https://salsa.debian.org/Maytha8/DebianWiki working on an extension] to provide the Debian navbar that is present on many other Debian sites. New extensions require manual intervention by DSA, which can take some time, especially if they are not packaged. <span id="line-37" class="anchor"></span><span id="line-38" class="anchor"></span>
Current resources for conversion:
* @guillem: A Debian fork of the mm2mw Perl scripts for migrating the old edit histories as well as converting the syntax (evolving at [https://salsa.debian.org/guillem/mm2mw <kbd>guillem/mm2mw</kbd>] on Salsa).
* [[User:Maytha8|@maytham]]: Shell scripts to retain edit histories, but without syntax conversion, developed at [https://salsa.debian.org/Maytha8/wiki-scripts <kbd>Maytha8/wiki-scripts</kbd>] on Salsa.
* @sunilmohan: [https://salsa.debian.org/sunilmohan/moinmoin_to_mediawiki/ <kbd>sunilmohan/moinmoin_to_mediawiki</kbd>] on Salsa (based on a tool to generate the [[FreedomBox|FreedomBox]] manual PDF).
* [[User:Andrewsh|@AndrewSayers]]: [https://salsa.debian.org/AndrewSayers/mediawiki-recommendations/ <kbd>AndrewSayers/mediawiki-recommendations</kbd>] on Salsa (a counterpart to the [https://wiki.debian.org/DebianWiki/WikiRevamp/Recommendations recommendations page] on the old wiki).


See also: ''[https://lists.debian.org/debian-wiki/2025/07/threads.html#00007 MediaWiki next steps]'' <span id="line-39" class="anchor"></span><span id="line-40" class="anchor"></span>
The configuration and extensions for the new instance have not been finalized yet. @maytham is working on an extension ([https://salsa.debian.org/Maytha8/DebianWiki Salsa repository]) to provide it with the Debian navigation bar that is present on many other Debian sites. New extensions require manual intervention by DSA which can take some time, especially if they are not already packaged for Debian.


== Content licensing ==
== Content licensing ==
The migration provides a good opportunity to think about the long-standing licensing problems that are often interpreted to mean that content from the old wiki cannot in fact be reused or redistributed legally.


<span id="line-41" class="anchor"></span><span id="line-42" class="anchor"></span>
Since {{#formatdate:2025-07-24}}, new content on the MoinMoin-based wiki is released under the terms of the [https://creativecommons.org/licenses/by-sa/4.0/ Creative Commons Attribution-ShareAlike License, version 4.0 (CC-BY-SA-4.0)],<ref name="old_wiki_copyright">[https://wiki.debian.org/copyright.html Copyright page] on the old Debian Wiki.</ref> unless otherwise noted, so non-copyrighted work will gradually be replaced even absent an orchestrated migration effort.
The migration provides a good opportunity to think about the long-standing licensing problems that mean content from the wiki cannot really be reused or redistributed legally. <span id="line-43" class="anchor"></span><span id="line-44" class="anchor"></span>
 
Since 24 July 2025, new content on the existing wiki uses [[copyright.html|CC BY-SA 4.0]] unless otherwise noted, so non-copyrighted work will gradually be replaced even without migrating. <span id="line-45" class="anchor"></span><span id="line-46" class="anchor"></span>


The migration will most likely work like previous migrations between [[MoinMoin|MoinMoin]] versions - the old edit history is retained, and a new edit updates the formatting. That ensures the migration to MediaWiki isn't blocked on the time-consuming process of rewriting content, but licensing issues will only fade away gradually over the years. <span id="line-47" class="anchor"></span><span id="line-48" class="anchor"></span>
The migration will most likely work like those that occurred for previous MoinMoin version bumps: the old edit history will be retained, followed by a conversion edit to migrate any deprecated syntax. That ensures the migration to MediaWiki isn't blocked on the time-consuming process of rewriting content, and the licensing issues will eventually fade away with the passage of time.


=== Choice of license ===
=== Choice of license ===
The Creative Commons license was agreed upon between participants on the mailing list and IRC because it:
* is designed for and applies to content, in contrast to other licenses that are aimed at software source code;
* requires [https://wiki.debian.org/copyright.html#Re-use_of_content attribution] for contributors' hard work;
* ensures any adaptations of the work remain available for reuse/redistribution under the same terms, preventing potential future bad actors from taking the work and making it proprietary; and
* is relatively permissive and compatible with the GNU GPL v3.0.


<span id="line-49" class="anchor"></span><span id="line-50" class="anchor"></span>
==== Frequently asked questions ====
The Creative Commons Attribution-ShareAlike 4.0 license was agreed upon between participants in the mailing list and IRC because: <span id="line-51" class="anchor"></span>
: '''''See also:''' The '''[https://lists.debian.org/debian-wiki/2025/07/msg00005.html Re: Content licensing]''' thread on the debian-wiki mailing list''
 
; Why not a dedication to the public domain, a la CC0?
* it is designed for and applies to content, rather than other licenses that are aimed at software. <span id="line-52" class="anchor"></span>
: The license chosen should generally require attribution. Virtually no content from other sources/sites could be copied to the wiki because nothing is compatible with the public domain except other public domain content.
* requires [https://wiki.debian.org/copyright.html#Re-use_of_content attribution] for contributors' hard work. <span id="line-53" class="anchor"></span>
; Why not Expat (a.k.a., the MIT License)?
* ensures any adaptations of the work remain CC BY-SA 4.0, preventing someone taking the work and making it proprietary. <span id="line-54" class="anchor"></span>
: That license is intended for software, whereas the Creative Commons licenses are intended for use specifically with non-software works. Note that the [https://www.debian.org/ Debian website proper] (www.debian.org) uses this, though.
* relatively permissive and is compatible with GPL-3. <span id="line-55" class="anchor"></span><span id="line-56" class="anchor"></span>
; Why not GFDL?
 
: In 2006, Debian Developers [https://www.debian.org/vote/2006/vote_001 approved a General Resolution] that defined the project's official posture towards the GFDL, declaring it DFSG-incompatible except when it is used without any of its invariant options. It is also much more restrictive, thereby reducing the possibility of reusing wiki content elsewhere, such as in man pages or the official documentation.
'''Why not public domain / CC Zero?''' <span id="line-57" class="anchor"></span>The license chosen should generally require attribution. Virtually no content from other sources/sites could be copied to the wiki because nothing is compatible with public domain except other public domain content. <span id="line-58" class="anchor"></span><span id="line-59" class="anchor"></span>
; Why not Creative Commons' NonCommercial (NC) or NoDerivatives (ND) options?
 
: Neither of those are DFSG-compatible.
'''Why not Expat (MIT)?''' <span id="line-60" class="anchor"></span>This license is intended for software. Licenses like the Creative Commons licenses were created specifically with non-software works in mind. Note that the Debian website (www.debian.org) uses this though. <span id="line-61" class="anchor"></span><span id="line-62" class="anchor"></span>
 
'''Why not GFDL?''' <span id="line-63" class="anchor"></span>In 2006, Debian Developers [https://www.debian.org/vote/2006/vote_001 moved a General Resolution] that concluded the GFDL is not a DFSG-compatible license, except when it is used without any of its invariant options. It is also much more restrictive, reducing the possibility of using wiki content elsewhere, like manual pages or official documentation. <span id="line-64" class="anchor"></span><span id="line-65" class="anchor"></span>
 
'''Why not CC's NC or ND options?''' <span id="line-66" class="anchor"></span>These are not DFSG-compatible. <span id="line-67" class="anchor"></span><span id="line-68" class="anchor"></span>
 
See also: ''[https://lists.debian.org/debian-wiki/2025/07/msg00005.html Re: Content licensing]'' <span id="line-69" class="anchor"></span><span id="line-70" class="anchor"></span>


=== Old content ===
=== Old content ===
 
@maytham is leading an ongoing relicensing effort (coordinated in the [https://salsa.debian.org/Maytha8/wiki-relicensing/ <kbd>Maytha8/wiki-relicensing</kbd> repository] on Salsa), seeking to make contact with all previous Debian Wiki contributors and obtain permission for their work to be re-licensed under CC-BY-SA-4.0.
<span id="line-71" class="anchor"></span><span id="line-72" class="anchor"></span>
@maytham is leading an ongoing [https://salsa.debian.org/Maytha8/wiki-relicensing/ relicensing effort] to contact previous contributors and obtain permission for their work to be relicensed under CC BY-SA 4.0. <span id="line-73" class="anchor"></span><span id="line-74" class="anchor"></span>


=== New content ===
=== New content ===
Notices have been added to the current wiki stating that any contributions submitted after midnight UTC on {{#formatdate:2025-07-24}} are released under CC-BY-SA-4.0, ''unless otherwise noted''. A copyright.html page<ref name="old_wiki_copyright" /> has also been written up with details on how to be compliant with the license.


<span id="line-75" class="anchor"></span><span id="line-76" class="anchor"></span>
== Recommendations and mass edits ==
Notices have been added to the current wiki so that any contribution submitted after 24 July 2025 00:00 UTC is released under the CC BY-SA 4.0, ''unless otherwise noted''. A [[copyright.html|copyright.html]] page has also been written up with details on how to be compliant with the license <span id="line-77" class="anchor"></span><span id="line-78" class="anchor"></span>
Before the old wiki can be migrated in bulk, we need to identify all the ways in which it will behave differently and work out how to adapt to those differences. For example, the current wiki has "discussion" pages that end with <code>/Discussion</code>, and are linked from within the page body. The equivalent MediaWiki convention is for "Talk" pages to use the same page name as their "content space" counterparts but nevertheless exist in parallel and separate namespaces that have the word <code>Talk:</code> appended, e.g., <code>Category_talk:</code>, and are linked from above the page content. Rules and recommended processes are being written up at [https://wiki.debian.org/DebianWiki/WikiRevamp/Recommendations WikiRevamp/Recommendations] on the old wiki.


== Recommendations and mass-edits ==
Several differences involve converting loose editing conventions to automated rules by writing pattern-matching code and doing mass edits to normalize all of the migrated content under a single, workable format. For example, "discussion" links on the old wiki have almost always been added by individual editors with page-specific styling. Every instance of that will need to be removed or massaged into conformity with the migration tool's definition of acceptable syntax. To achieve that, we plan to change all discussion links to [https://wiki.debian.org/HelpOnProcessingInstructions#supplementation supplementation page instructions] that can be easily removed during the migration process. Tools for these conversions are available in the [https://salsa.debian.org/AndrewSayers/mediawiki-recommendations/ <kbd>mediawiki-recommendations</kbd> repository] on Salsa.


<span id="line-79" class="anchor"></span><span id="line-80" class="anchor"></span>
=== Specific mass edits ===
Before we can migrate the wiki, we need to identify all the ways it will behave differently, and work out how to convert those differences. For example, the current wiki has &quot;discussion&quot; pages that end with <code>/Discussion</code> and are linked from within the page body. The equivalent MediaWiki convention is for &quot;Talk&quot; pages to begin with <code>Talk:</code>, <code>Category_talk:</code> etc. and be linked from the menu above the page body. Rules and recommended processes are being written up in [[DebianWiki/WikiRevamp/Recommendations|DebianWiki/WikiRevamp/Recommendations]]. <span id="line-81" class="anchor"></span><span id="line-82" class="anchor"></span>
A "mass edit" refers to using an automation tool to process and edit a great many (usually hundreds or thousands) of pages at once with the goal of tackling very pervasive formatting issues in a deterministic manner. The term itself is a reference to MediaWiki's own [[mediawikiwiki:Special:MyLanguage/Extension:MassEditRegex|MassEditRegex extension]].


Several differences involve converting loose editing conventions to automated rules, by writing pattern-matching code and doing mass-edits to ensure every case matches the pattern. For example, &quot;discussion&quot; links are added by individual editors with page-specific styling, every instance of which will need to be removed during the migration. To achieve that, we plan to change all discussion links to [[HelpOnProcessingInstructions#supplementation|supplementation page instructions]] that can be easily removed during the migration process. Tools for these conversions are available in [https://salsa.debian.org/AndrewSayers/mediawiki-recommendations/ the mediawiki-recommendations repository]. <span id="line-83" class="anchor"></span><span id="line-84" class="anchor"></span>
Some target objectives for these tasks have already been identified.
; <kbd>#language</kbd> tags ({{#formatdate:2025-08-17}})
: Many old wiki pages have a processing instruction such as <code>#language pt_BR</code>. This edit changed about 15 pages with errors in their processing instructions; see the [https://lists.debian.org/debian-wiki/2025/08/msg00028.html mailing list thread] for more details.
; Category footers ({{#formatdate:2025-08-17}})
: Categories are generally appended to pages after a [https://wiki.debian.org/HelpOnRules horizontal rule] generated by entering four consecutive hyphen-minuses on a line by themselves in the page's source code. This edit changed about 620 pages containing issues that made it harder to detect the category list; see the [https://lists.debian.org/debian-wiki/2025/08/msg00028.html mailing list thread] for more details.
; <kbd><nowiki><<FullSearch>></nowiki></kbd> ({{#formatdate:2025-09-06}} and {{#formatdate:2025-09-07}})
: MoinMoin's [https://wiki.debian.org/HelpOnMacros#A:.2BAH4:text.3DFullSearch <kbd><nowiki><<FullSearch>></nowiki></kbd> macro] doesn't have a direct MediaWiki equivalent, so we will need to convert it differently depending on its contents. This edit changed about 130 pages in an effort to reduce the number of patterns that need to be considered; see the [https://lists.debian.org/debian-wiki/2025/09/msg00000.html mailing list thread] for more details.
; Translation page names ({{#formatdate:2025-10-04}})
: Translations should have page names that resemble each other, but many old wiki pages don't fit that pattern, such as when some language translations haven't been updated since the English version was renamed). This edit renamed approximately 100 pages to fit the normal naming convention; see the [https://lists.debian.org/debian-wiki/2025/09/msg00013.html mailing list thread] for more details.
; Non-wiki <kbd>#format</kbd>s ({{#formatdate:2026-02-20}} and {{#formatdate:2026-02-21}})
: MoinMoin's [https://wiki.debian.org/HelpOnProcessingInstructions#A.23format <kbd>#format</kbd> processing instruction] isn't widely used, but adds another special case to the migration process; consider using a page-wide [https://wiki.debian.org/HelpOnParsers#highlight_parser <kbd>#!highlight</kbd> block] instead. See the [https://lists.debian.org/debian-wiki/2026/02/msg00002.html mailing list thread] for more details.


=== Specific mass-edits ===
=== Responding to mass edits ===
If you expect an upcoming mass edit to affect a lot of pages you maintain, consider making a rule to ignore e-mails with the subject <code>Update of ".*" by <author></code> and a date within the specified range, where <author> is the wiki username of the person managing the edit (e.g. [[User:Andrewsh|Andrew Sayers]]).


<span id="line-85" class="anchor"></span><span id="line-86" class="anchor"></span>
If you wish to object to an upcoming mass edit, contact the mailing list (preferably in a reply to that edit's announcement thread) before it occurs and explain your objection. We'll talk through the issue and look for suitable ways to change the upcoming work. If you're having difficulty phrasing your objection, it's fine to just say "I need time to think through the implications, please postpone by a week," and then write a longer reply a few days later.
A &quot;mass-edit&quot; is the process of editing many (usually tens or hundreds) of pages at once. Unlike normal edits, they are generally at least partially automated, and aimed at formatting issues instead of content. The term &quot;mass-edit&quot; is a reference to MediaWiki's [https://www.mediawiki.org/wiki/Extension:MassEditRegex MassEditRegex extension]. <span id="line-87" class="anchor"></span><span id="line-88" class="anchor"></span>


; #language tags (2025-08-17)
If you want to object to an already-completed mass edit, you should again make contact on the mailing list after reverting the change, explaining your objection. We'll look for solutions, e.g., a new mass-edit to fix other pages. Editors are usually notified about changes to pages they've edited, but a mass edit that affects a thousand pages will generate notifications for all future changes to all thousand pages, so you shouldn't assume the mass editor has seen your reversion.
: Many pages have a processing instruction like <code>#language pt_BR</code>. This edit changed about 15 pages with errors in their processing instructions. See [https://lists.debian.org/debian-wiki/2025/08/msg00028.html mailing list message]. <span id="line-89" class="anchor"></span>
; Category footers (2025-08-17)
: Categories are generally appended to pages after a [[HelpOnRules|horizontal rule]] with four dashes. This edit changed about 620 pages with issues that made it harder to detect the category list. See [https://lists.debian.org/debian-wiki/2025/08/msg00028.html mailing list message]. <span id="line-90" class="anchor"></span>
; &lt;&lt;FullSearch&gt;&gt; (2025-09-06 to 2025-09-07)
: [[HelpOnMacros#A:.2BAH4:text.3DFullSearch|MoinMoin's &lt;&lt;FullSearch&gt;&gt; macro]] doesn't have a direct MediaWiki alternative, so we will need to convert it differently depending on its contents. This edit changed about 130 pages to reduce the number of patterns we need to consider. See [https://lists.debian.org/debian-wiki/2025/09/msg00000.html mailing list message]. <span id="line-91" class="anchor"></span>
; Translation page names (2025-10-04)
: Translations should have page names that resemble each other, but many pages don't fit the pattern (e.g. because the translation hasn't been updated since the English version was renamed). This edit renamed about 100 pages to fit the normal naming convention. See [https://lists.debian.org/debian-wiki/2025/09/msg00013.html the mailing list message]. <span id="line-92" class="anchor"></span>
; Non-wiki #format's (between 2026-02-20 and 2026-02-21)
: MoinMoin's [[HelpOnProcessingInstructions#A.23format|#format processing instruction]] isn't widely used, and adds another special case to the migration process. Use a page-wide [[HelpOnParsers#highlight_parser|#!highlight block]] instead. See [https://lists.debian.org/debian-wiki/2026/02/msg00002.html the mailing list message]. <span id="line-93" class="anchor"></span>
 
<span id="line-94" class="anchor"></span><span id="line-95" class="anchor"></span>
 
=== Responding to a mass-edit ===
 
<span id="line-96" class="anchor"></span><span id="line-97" class="anchor"></span>
If you expect an upcoming mass-edit to affect a lot of pages you maintain, consider making a rule to ignore e-mails with the subject <code>Update of &quot;.*&quot; by &lt;author&gt;</code> and a date within the specified range, where &lt;author&gt; is the wiki name of the person doing the edit (e.g. AndrewSayers). <span id="line-98" class="anchor"></span><span id="line-99" class="anchor"></span>
 
If you object to an upcoming mass-edit, contact the mailing list (preferably in a reply to the edit's thread) before the edit occurs, and explain your objection. We'll talk through the issue and look for suitable ways to change the upcoming edit. If you're having difficulty phrasing your objection, it's fine to just say &quot;I need time to think through the implications, please postpone by a week&quot;, then write a longer reply a few days later. <span id="line-100" class="anchor"></span><span id="line-101" class="anchor"></span>
 
If you object to a previous mass-edit, contact the mailing list (preferably in a reply to the edit's thread) after reverting the change, and explain your objection. We'll talk through the issue and look for solutions (e.g. a new mass-edit to fix other pages). Editors are usually notified about changes to pages they've edited, but a mass-edit that affects a thousand pages will generate notifications for all future changes to all thousand pages, so you shouldn't assume the mass-editor has seen your reversion. <span id="line-102" class="anchor"></span><span id="line-103" class="anchor"></span>


== Other conversations ==
== Other conversations ==
: '''''Be advised:''''' {{MoinMarkup/Smiley|alert}} ''This section attempts to summarize conversations from the [https://lists.debian.org/debian-wiki mailing list] and [ircs://irc.oftc.net/debian-wiki IRC channel]. It will always be somewhat out-of-date and incomplete.'' {{MoinMarkup/Smiley|alert}}


<span id="line-104" class="anchor"></span><span id="line-105" class="anchor"></span>
=== Debian Bug Tracker links ===
[[File:/htdocs/debwiki/img/alert.png|16x16px|/!\]] This section attempts to summarise conversations from the [https://lists.debian.org/debian-wiki mailing list] and [ircs://irc.oftc.net/debian-wiki IRC channel]. It will always be somewhat out-of-date and incomplete. <span id="line-106" class="anchor"></span><span id="line-107" class="anchor"></span>
: '''''See also:''' The [https://lists.debian.org/debian-wiki/2025/07/msg00054.html DebianBug links thread] on the mailing list.''
 
The current wiki renders links to Debian and Ubuntu bugs with a distinct style, receiving a <code>title</code> attribute with their subject line, with closed bugs also shown struck with a line through them. For example, the following bugs should be struck through, and you should see a tooltip with their subject line when you hover your mouse pointer over them: [https://bugs.debian.org/399237 <span title="installation-reports: Etch-rc1 on Thinkpad T60 [SUCCESS]" style="text-decoration: line-through;">Bug #399237</span>] and [https://bugs.launchpad.net/bugs/1597017 <span title="AppArmor: mount rules grant excessive permissions" style="text-decoration: line-through;">LP #1597017</span>].
=== Debian Bug Links ===
 
<span id="line-108" class="anchor"></span><span id="line-109" class="anchor"></span>
The current wiki renders Debian and Ubuntu bugs specially - links get a <code>title</code> and closed bugs are struck through. For example, the following bugs should be struck through, and you should see a custom title when you hover over them: [https://bugs.debian.org/399237 Debian Bug #399237] [https://bugs.launchpad.net/bugs/1597017 Launchpad bug 1597017]. <span id="line-110" class="anchor"></span><span id="line-111" class="anchor"></span>
 
This is implemented by including [https://salsa.debian.org/debian/wiki.debian.org/-/blob/master/usr/htdocs/bugstatus.js bugstatus.js] in every page, which scans the HTML for appropriate links and sends requests to [https://salsa.debian.org/debian/wiki.debian.org/-/blob/master/bin/bugstatus the bugstatus script] and [https://salsa.debian.org/debian/wiki.debian.org/-/blob/master/bin/launchpad the launchpad script]. The bugstatus script in turn uses the [[DebbugsSoapInterface|Debbugs SOAP interface]], while the launchpad script uses [https://pypi.org/project/launchpadlib/ launchpadlib]. <span id="line-112" class="anchor"></span><span id="line-113" class="anchor"></span>
 
MediaWiki alternatives to this solution include: <span id="line-114" class="anchor"></span><span id="line-115" class="anchor"></span>
 
<code>MediaWiki:Common.js</code> is a JavaScript file included on every page in a wiki. This is the most direct translation, but can be hard to manage because of the temptation to put unrelated content in the same file. <span id="line-116" class="anchor"></span><span id="line-117" class="anchor"></span>
 
[https://www.mediawiki.org/wiki/Extension:Gadgets The Gadgets extension] is a more powerful alternative to <code>MediaWiki:Common.js</code>, and seems like the natural choice for a MediaWiki equivalent of the current implementation. <span id="line-118" class="anchor"></span><span id="line-119" class="anchor"></span>


[https://www.mediawiki.org/wiki/Manual:$wgEnableScaryTranscluding Scary Transcluding] lets you include pages and templates from other wikis. Data is cached, with [https://www.mediawiki.org/wiki/Manual:$wgEnableScaryTranscluding a configurable timeout]. For example, this would let us run an internal service that generates HTML from some pre-existing Perl library, then transclude that HTML into ordinary wiki pages. It's the wrong tool for this particular job, but may be worth revisiting if other use cases pop up. <span id="line-120" class="anchor"></span><span id="line-121" class="anchor"></span>
At the code level, this is implemented by including [https://salsa.debian.org/debian/wiki.debian.org/-/blob/master/usr/htdocs/bugstatus.js <code>bugstatus.js</code>] in every page, where it scans the HTML for those specific link types and sends requests to the [https://salsa.debian.org/debian/wiki.debian.org/-/blob/master/bin/bugstatus bugstatus script] and the [https://salsa.debian.org/debian/wiki.debian.org/-/blob/master/bin/launchpad launchpad script]. The bugstatus script in turn uses the [https://wiki.debian.org/DebbugsSoapInterface Debbugs SOAP interface] while the launchpad script uses the eponymous [https://pypi.org/project/launchpadlib/ <code>launchpadlib</code> Python module].


[https://www.mediawiki.org/wiki/Extension:Cargo The Cargo extension] lets MediaWiki store and query data in an internal database, which could potentially be synchronised with an external database somehow. But Cargo has a poor security reputation, and synchronising data could be awkward. <span id="line-122" class="anchor"></span><span id="line-123" class="anchor"></span>
The MediaWiki alternatives to these approaches include:
 
* <kbd>[[MediaWiki:Common.js]]</kbd> is a JavaScript file included in every page on a wiki. This is the alternative that's most similar in function, but it can be hard to manage because of the temptation to put unrelated content in the same file.
[https://www.mediawiki.org/wiki/Extension:External_Data The External Data extension] lets MediaWiki interrogate external sources like the [[UltimateDebianDatabase|Ultimate Debian Database]]. This would let us render links server-side instead of in JavaScript, but would introduce questions around caching. Allowing the wiki to query the UDD opens up a lot of interesting possibilities, and this might be a good way to make that possible. This is the solution we currently expect to use. <span id="line-124" class="anchor"></span><span id="line-125" class="anchor"></span>
* The MediaWiki [[mediawikiwiki:Special:MyLanguage/Extension:Gadgets|Gadgets extension]] is a more powerful alternative to MediaWiki:Common.js, and seems like the natural choice for a replacement for the current MoinMoin implementation.
 
* [[mediawikiwiki:Special:MyLanguage/Manual:$wgEnableScaryTranscluding|Scary transcluding]] lets you include pages and templates from other wikis with a cache for the page data and a configurable timeout. For example, this would let us run an internal service that generates HTML from some pre-existing Perl library, then transclude that HTML into ordinary wiki pages. It's the wrong tool for this particular job, but may be worth revisiting if other use cases pop up.
See also: [https://lists.debian.org/debian-wiki/2025/07/msg00054.html DebianBug links] on the mailing list. <span id="line-126" class="anchor"></span><span id="line-127" class="anchor"></span>
* The [[mediawikiwiki:Special:MyLanguage/Extension:Cargo|Cargo extension]] lets MediaWiki store and query data in an internal database (which could potentially be synchronised with an external database, somehow), but Cargo has a poor security reputation and synchronizing the data could be awkward.
* The [[mediawikiwiki:Special:MyLanguage/Extension:External Data|External Data extension]] lets MediaWiki interrogate external sources, like the [https://wiki.debian.org/UltimateDebianDatabase Ultimate Debian Database]. This would let us render links server-side instead of in JavaScript, but would introduce questions around caching. Allowing the wiki to query the UDD opens up a lot of interesting possibilities, and this might be a good way to make that possible. This is the solution we currently expect to eventually make use of.


=== Migrating user accounts ===
=== Migrating user accounts ===
: '''''See also:''' The [https://lists.debian.org/debian-wiki/2025/07/msg00073.html "How to manage new Salsa accounts with the new wiki" thread] on the mailing list.''
The plan is to switch from MoinMoin's built-in user database to authenticating using Salsa accounts, so people will need to [https://salsa.debian.org/users/sign_up create a Salsa account].


<span id="line-128" class="anchor"></span><span id="line-129" class="anchor"></span>
The suggested solution is to disable creation of new wiki accounts at some point and give account holders from the old wiki replacement accounts on Salsa with the same username, and ask them to change their information if they want.
The plan is to switch from [[MoinMoin|MoinMoin]]'s built-in user database to Salsa accounts, so people will need to [https://salsa.debian.org/users/sign_up create a Salsa account]. <span id="line-130" class="anchor"></span><span id="line-131" class="anchor"></span>
 
The suggested solution is to disable creation of new wiki accounts at some point, give people Salsa accounts with the same username as the wiki, and ask them to change their information if they want. <span id="line-132" class="anchor"></span><span id="line-133" class="anchor"></span>
 
See also: [https://lists.debian.org/debian-wiki/2025/07/msg00073.html How to manage new Salsa accounts with the new wiki] on the mailing list. <span id="line-134" class="anchor"></span><span id="line-135" class="anchor"></span>


=== Boilerplate page headers ===
=== Boilerplate page headers ===
 
Pages often start with some boilerplate text (i.e., translation headers). Putting a common header template on all pages would make it easier to manage that text; see [[Template:PageHeader]] for an initial demonstration of how that might look. This has been mentioned in passing, but no firm decision has yet been made.
<span id="line-136" class="anchor"></span><span id="line-137" class="anchor"></span>
Pages often start with some boilerplate text (e.g. translation headers). Putting a common header template on all pages would make it easier to manage that text. See [https://wiki2025.debian.org/wiki/Template:PageHeader the PageHeader template] for an initial demonstration. <span id="line-138" class="anchor"></span><span id="line-139" class="anchor"></span>
 
This has been mentioned in passing, but no decision has been made. <span id="line-140" class="anchor"></span><span id="line-141" class="anchor"></span>


=== Translations ===
=== Translations ===
: '''''See also:''' The [https://lists.debian.org/debian-wiki/2025/08/msg00005.html "Info request on new Wiki translations - any automatic handling of translation headers and translated pages?" thread] on the mailing list.''
We plan to install MediaWiki's [[mediawikiwiki:Special:MyLanguage/Help:Extension:Translate|Translate extension]] to handle content localization workflows. The benefits of doing this include:
* No need to maintain a <code>TAG:TRANSLATION-HEADER</code> block, instead just add <code><nowiki><languages /></nowiki></code> to the top of a page and the rest is handled automatically on the backend.
** For a good example of this extension in action, check out the "Languages" block at the top of Translate extension's [[mediawikiwiki:Special:MyLanguage/Help:Extension:Translate|help page]].
* It provides advanced translation tools, like always showing up-to-date completion progress for each language and suggesting machine translation suggestions to translators directly within the interface.
* It will likely be familiar to people coming here from other MediaWiki-based wikis, too.


<span id="line-142" class="anchor"></span><span id="line-143" class="anchor"></span>
We could avoid the need to manually add <code><nowiki><languages /></nowiki></code> tags to pages by installing MediaWiki's [[mediawikiwiki:Special:MyLanguage/Extension:UniversalLanguageSelector|Universal Language Selector extension]] and enabling [[mediawikiwiki:Special:MyLanguage/Help:Extension:Translate/Configuration#:~:text=$wgTranslatePageTranslationULS|wgTranslatePageTranslationULS]]. To see how this works, go to the [[wikipedia:Debian|Debian]] article on English Wikipedia and there click on the [[File:CdxIconLanguage.png|x22px]] Languages button near the top of the page.
We plan to install MediaWiki's [https://www.mediawiki.org/wiki/Help:Extension:Translate Translate Extension] to handle translation. Benefits of this extension include: <span id="line-144" class="anchor"></span><span id="line-145" class="anchor"></span>
 
* no need to maintain a 'TAG:TRANSLATION-HEADER' block - just add <code>&lt;languages /&gt;</code> to the top of the page, and the rest is handled automatically <span id="line-146" class="anchor"></span>
** see e.g. the &quot;Languages&quot; block at the top of [https://www.mediawiki.org/wiki/Help:Extension:Translate Translate Extension] <span id="line-147" class="anchor"></span>
* provides advanced translation tools, like showing how complete a translation is and suggesting machine translations <span id="line-148" class="anchor"></span>
* may be familiar to people coming here from other MediaWiki-based wikis <span id="line-149" class="anchor"></span><span id="line-150" class="anchor"></span>
 
We could avoid the need to add <code>&lt;languages /&gt;</code> by installing MediaWiki's [https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector Universal Language Selector Extension] and enabling [https://www.mediawiki.org/wiki/Help:Extension:Translate/Configuration#:~:text=$wgTranslatePageTranslationULS wgTranslatePageTranslationULS]. To see how this works, go to [https://en.wikipedia.org/wiki/Debian Debian's Wikipedia page] and click on the [[File:https://en.wikipedia.org/w/load.php?modules=skins.vector.icons&image=language&variant=progressive&format=original&lang=en&skin=vector-2022&version=bayjp|class=external_image|https://en.wikipedia.org/w/load.php?modules=skins.vector.icons&amp;image=language&amp;variant=progressive&amp;format=original&amp;lang=en&amp;skin=vector-2022&amp;version=bayjp]] Languages button near the top of the page. <span id="line-151" class="anchor"></span><span id="line-152" class="anchor"></span>


An alternative would be to write our own custom templates (see [https://wiki2025.debian.org/wiki/ExampleForTranslation ExampleForTranslation]). They would have no external dependencies and we could modify them more easily, but they'd be harder to maintain and wouldn't have as many features. <span id="line-153" class="anchor"></span><span id="line-154" class="anchor"></span>
Another approach would be to write our own custom templates for managing translations (see [[ExampleForTranslation]] for a proof of concept). They would have no external dependencies and we could modify them more easily, but they'd be harder to maintain and wouldn't have as many features.


Another alternative is [https://wiki.openstreetmap.org/wiki/Template:Languages OpenStreetMap's languages template]. This uses a [https://wiki.openstreetmap.org/wiki/Module:Languages Lua module], so it only requires the common [https://www.mediawiki.org/wiki/Module Scribunto] extension. It would probably produce a better result than custom templates, but doesn't provide the advanced tools in MediaWiki's solution. <span id="line-155" class="anchor"></span><span id="line-156" class="anchor"></span>
Still another alternative would be [https://wiki.openstreetmap.org/wiki/Template:Languages OpenStreetMap Wiki's Languages template], which is powered by a [https://wiki.openstreetmap.org/wiki/Module:Languages Lua module] so it only requires the common [[mediawikiwiki:Special:MyLanguages/Extension:Scribunto|Scribunto extension]]. It would probably produce a better result than custom templates, but doesn't provide the advanced tools found in MediaWiki's solution.


We plan to include a template to link to localised versions of pages. So for example, if you're translating <code>Page1</code> and find a link to <code>Page2</code>, <code>{{ll|Page2}}</code> will update automatically when translations of <code>Page2</code> are added or removed - see [https://www.mediawiki.org/wiki/Template:Localized_link MediaWiki's Localized link template], [https://wiki2025.debian.org/wiki/Template:ll the custom ll template], and [https://wiki.openstreetmap.org/wiki/Template:LL OpenStreetMap's LL template]. <span id="line-157" class="anchor"></span><span id="line-158" class="anchor"></span>
We plan to include a template for linking to localized versions of pages, so for example, if you're translating <code>Some page</code> and encounter a link to <code>This other page</code>, you would only need to use a simple syntax like <code>&lbrace;&lbrace;[[Template:Ll|'''Ll''']]&verbar;This other page&rbrace;&rbrace;</code> to create a link to that page's translations to the same language on all of the translations of <code>Some page</code>; see MediaWiki's [[mediawikiwiki:Special:MyLanguage/Template:Localized_link|Localized link]] template, OpenStreetMap Wiki's [https://wiki.openstreetmap.org/wiki/Template:LL LL] template, and our very own [[Template:Ll]] right here to compare the implementation choices.


See also: [https://lists.debian.org/debian-wiki/2025/08/msg00005.html Info request on new Wiki translations - any automatic handling of translation headers and translated pages?]. <span id="line-159" class="anchor"></span><span id="line-160" class="anchor"></span>
<span id="Editorial_tasks_.28e.g._CategoryProposedDeletion.29"></span>
=== Editorial tasks (e.g. CategoryProposedDeletion) ===
=== Editorial tasks (e.g. CategoryProposedDeletion) ===
: '''''See also:''' The summary of the IRC discussion surrounding [https://lists.debian.org/debian-wiki/2025/07/msg00068.html "Issues around CategoryProposedDeletion"].''
On the MoinMoin wiki, pages are added to [https://wiki.debian.org/DebianWiki/Administration#Current_tasks editorial categories] like [https://wiki.debian.org/CategoryProposedDeletion CategoryProposedDeletion], with the expectation that the editorial work will be undertaken at some time in the future. That editorial process is discussed in the [https://wiki.debian.org/DebianWiki/EditorGuide editor guide] there.


<span id="line-161" class="anchor"></span><span id="line-162" class="anchor"></span>
MediaWiki makes it easy to create more verbose and precise admonitions, with guidance on the page itself; see the pro forma [[ExampleForProposedDeletion]] for one potential style.
In the current wiki, pages are added to [[DebianWiki/Administration#Current_tasks|editorial categories]] like [[CategoryProposedDeletion|CategoryProposedDeletion]], with the expectation the editorial work will be made at some future date. That editorial process is discussed in [[DebianWiki/EditorGuide|the editor guide]]. <span id="line-163" class="anchor"></span><span id="line-164" class="anchor"></span>
 
MediaWiki makes it easy to create more verbose and precise admonitions, with guidance on the page itself - see [https://wiki2025.debian.org/wiki/ExampleForProposedDeletion ExampleForProposedDeletion]. <span id="line-165" class="anchor"></span><span id="line-166" class="anchor"></span>
 
See also: [https://lists.debian.org/debian-wiki/2025/07/msg00068.html IRC summary: Issues around CategoryProposedDeletion]. <span id="line-167" class="anchor"></span><span id="line-168" class="anchor"></span>


=== Scope ===
=== Scope ===
Discussion on the scope of the wiki is ongoing, but still in early stages. Most of it is happening in the ''[https://lists.debian.org/debian-wiki/2025/08/msg00015.html "aims of the wiki?"]'' thread on the mailing list.


<span id="line-169" class="anchor"></span><span id="line-170" class="anchor"></span>
A draft of potential guidelines was published at [https://wiki.debian.org/MaythamAlsudany/DraftContentGuidelines MaythamAlsudany/DraftContentGuidelines] on the old wiki, with related discussions about them ongoing at the [https://wiki.debian.org/MaythamAlsudany/DraftContentGuidelines/Discussion /Discussion] subpage.
Discussion on the scope of the wiki is ongoing, but still in early stages. <span id="line-171" class="anchor"></span>Most of it is happening in ''[https://lists.debian.org/debian-wiki/2025/08/msg00015.html aims of the wiki?]'' on the mailing list. <span id="line-172" class="anchor"></span><span id="line-173" class="anchor"></span>
 
A draft for guidelines were published at [[MaythamAlsudany/DraftContentGuidelines|MaythamAlsudany/DraftContentGuidelines]] and is [[MaythamAlsudany/DraftContentGuidelines/Discussion|open for discussion]]. <span id="line-174" class="anchor"></span><span id="line-175" class="anchor"></span>


=== Milestones and gamification ===
=== Milestones and gamification ===
MediaWiki automatically sends editors congratulatory notifications when they make a "milestone" number of edits (1st, 10th, 100th, etc.). This can be disabled by going to your [[Special:Preferences#mw-prefsection-echo event|User preferences]] page and disabling the "Edit milestone" option, but there doesn't seem to be a way to disable this by default for all new users.


<span id="line-176" class="anchor"></span><span id="line-177" class="anchor"></span>
=== Automated bot edits ===
By default, MediaWiki notifies you when you make round-numbered edits (1st, 10th, 100th etc.). This can be disable by going to [https://wiki2025.debian.org/wiki/Special:Preferences#mw-prefsection-echo event preferences] and disabling &quot;Edit milestone&quot;, but there doesn't seem to be a way to disable this by default for new users. <span id="line-178" class="anchor"></span><span id="line-179" class="anchor"></span>
We don't have bots making edits to the old wiki, but some proposals for the new wiki would benefit from such automation.
 
* The Debian [https://wiki.debian.org/DebianWiki/WikiRevamp#Debian_Bug_Links Bug Tracker links] handling could be implemented without JavaScript, so long as editors remember to create links to them as template calls (a la <code>&lbrace;&lbrace;[[Template:DebianBug|'''DebianBug''']]&verbar;NNN&rbrace;&rbrace;</code>) instead of <code><nowiki>[[DebianBug:NNN]]</nowiki></code> or <code><nowiki>[https://bugs.debian.org/NNN Bug #NNN]</nowiki></code>. That's more likely to happen if a bot fixes those links automatically.
=== Automated edits with bots ===
* [https://wiki.debian.org/DebianWiki/WikiRevamp#Boilerplate_page_headers Boilerplate page headers], such as those for [https://wiki.debian.org/DebianWiki/WikiRevamp#Translations translations], need to be added to the top of each page. Having a bot do that is probably easier than educating each new editor that comes along.
* [https://wiki.debian.org/DebianWiki/WikiRevamp#Editorial_tasks_.28e.g._CategoryProposedDeletion.29 Editorial tasks] involve scheduling some action for a particular future date (e.g., deleting a page if nobody objects for one month). Automating those actions would give everyone more certainty about the issue, and might mean non-admin users don't need permission to delete pages themselves.
** An alternative would be to encourage people to help clean up the wiki in general, rather than just focus on their little corner of it. This hasn't worked before, because doing so is less inherently rewarding, risks treading on others' toes, and is unnecessarily hard work in MoinMoin, but this hasn't had its own dedicated discussion, and no decision has been made.


<span id="line-180" class="anchor"></span><span id="line-181" class="anchor"></span>
=== Interwiki links vs. templates ===
We don't have bots making edits to the current wiki, but some proposals for the new wiki would benefit from automated edits. <span id="line-182" class="anchor"></span><span id="line-183" class="anchor"></span>
: '''''See also:''' The brief mention in the [https://lists.debian.org/debian-wiki/2025/07/msg00053.html#:~:text=DebianIRC "Re: Complex conversion issues"] thread on the mailing list, and the resulting [[Template:DebianIRC|DebianIRC template]].''


[[DebianWiki/WikiRevamp#Debian_Bug_Links|Debian Bug Links]] can be implemented without JavaScript, so long as editors write links as <code>{{DebianBug|NNN}}</code> instead of <code>[[DebianBug:NNN]]</code> or <code>https://bugs.debian.org/NNN</code>. That's more likely to happen if a bot fixes those links automatically. <span id="line-184" class="anchor"></span><span id="line-185" class="anchor"></span>
The current wiki's [https://wiki.debian.org/InterWikiMap InterWikiMap] is quite large, and as evidenced by the debate over [https://wiki.debian.org/DebianWiki/WikiRevamp#Debian_Bug_Links Debian Bug links] there's interest in pushing beyond what it's currently designed to handle. MediaWiki [[mediawikiwiki:Special:MyLanguage/Manual:Interwiki|interwiki links]] can only be changed by editing a database table, so a direct translation would be harder to use than the current solution.


[[DebianWiki/WikiRevamp#Boilerplate_page_headers|Boilerplate page headers]] (e.g. [[DebianWiki/WikiRevamp#Translations|translations]]) need to be added to the top of each page. Having a bot do that is probably easier than educating each new editor that comes along. <span id="line-186" class="anchor"></span><span id="line-187" class="anchor"></span>
Templates are more flexible than interwiki links, and also more familiar to users. So far, nobody has objected to the idea of converting most interwiki links to templates.


[[DebianWiki/WikiRevamp#Editorial_tasks_.28e.g._CategoryProposedDeletion.29|Editorial tasks]] involve scheduling some action for a particular future date (e.g. deleting a page if nobody objects for one month). Automating those actions would give everyone more certainty about the issue, and might mean non-admin users don't need permission to delete pages themselves. <span id="line-188" class="anchor"></span><span id="line-189" class="anchor"></span>
== References ==
 
<references />
An alternative would be to encourage people to help clean up the wiki in general, rather than just focus on their little corner of it. This hasn't worked before, because doing so is less inherently rewarding, risks treading on others' toes, and is unnecessarily hard work in MoinMoin. <span id="line-190" class="anchor"></span><span id="line-191" class="anchor"></span>
 
This hasn't had its own dedicated discussion, and no decision has been made. <span id="line-192" class="anchor"></span><span id="line-193" class="anchor"></span>
 
=== Interwiki links vs templates ===
 
<span id="line-194" class="anchor"></span><span id="line-195" class="anchor"></span>
The current wiki's [[InterWikiMap|InterWikiMap]] is quite large, and [[DebianWiki/WikiRevamp#Debian_Bug_Links|Debian Bug Links]] shows there's interest in pushing beyond what it's designed to handle. [https://www.mediawiki.org/wiki/Manual:Interwiki MediaWiki interwiki links] can only be changed by editing a database table, so a direct translation would be harder to use than the current solution. <span id="line-196" class="anchor"></span><span id="line-197" class="anchor"></span>
 
Templates are more flexible than interwiki links, and more familiar to users. So far, nobody has objected to the idea of converting interwiki links to templates. <span id="line-198" class="anchor"></span><span id="line-199" class="anchor"></span>
 
See also [https://lists.debian.org/debian-wiki/2025/07/msg00053.html#:~:text=DebianIRC a brief mention in Re: Complex conversion issues] and [https://wiki2025.debian.org/wiki/Template:DebianIRC the example DebianIRC template]. <span id="line-200" class="anchor"></span><span id="line-201" class="anchor"></span>


== See also ==
== See also ==
 
* The [https://lists.debian.org/debian-wiki debian-wiki mailing list]
<span id="line-202" class="anchor"></span><span id="line-203" class="anchor"></span>
* The [ircs://irc.oftc.net/debian-wiki #debian-wiki] IRC channel on the OFTC network
* [https://lists.debian.org/debian-wiki debian-wiki@lists.debian.org] mailing list <span id="line-204" class="anchor"></span>
* The [[Main Page|demo instance of the new MediaWiki-based Debian Wiki]]
* [ircs://irc.oftc.net/debian-wiki #debian-wiki] IRC channel <span id="line-205" class="anchor"></span>
* [[:Category:Example|Some examples of ideas for the new wiki]]
* [https://wiki2025.debian.org/ demo instance of the new wiki] <span id="line-206" class="anchor"></span>
* [https://wiki2025.debian.org/wiki/Category:Example examples of ideas for the new wiki] <span id="line-207" class="anchor"></span><span id="line-208" class="anchor"></span>
 
-----
 
<span id="line-209" class="anchor"></span>[[CategoryMigration|CategoryMigration]] <span id="line-210" class="anchor"></span><span id="bottom" class="anchor"></span>
 
</div>

Latest revision as of 09:04, 28 August 2026

Note: This was generated using Pandoc to convert MoinMoin's parsed HTML output directly into MediaWiki syntax. This is an experiment to check fidelity.

At DebConf25, a BOF was dedicated to discuss the state of the Debian Wiki.[1] Known historical issues were summarized, in particular:

  • The wiki relies on old software.
  • There are no clear guidelines on the scope of what is and is not appropriate wiki content.
  • There is no "default" license, most of the pages don't specify one and the few who do use a variety of them. As a consequence, most of the pages probably do not comply with DFSG.
  • There is no clear way to handle communications about the wiki.

In the following days, action was taken about this.

Participating

Want to help? Start by reading the very next section below on channels of communication. On IRC, you can ask how you can help and participate in discussions regarding migration and licensing.

Communication

The debian-wiki mailing list was created to discuss the Wiki, in addition to the #debian-wiki IRC channel. If you want to participate, you are encouraged to reach via at least one, but ideally both of them, as discussions often occur on both at the same time.

Software migration

See also: The MediaWiki next steps thread on the debian-wiki mailing list

During the BOF, the possibility was brought up of a migration to MediaWiki: a well-established wiki platform already being used by many others, like Wikipedia and the Arch Wiki.

Since then, @taavi has worked with DSA to setup mozart.debian.org, a machine running Debian Trixie that hosts a MediaWiki instance. It can be accessed at wiki2025.debian.org.

Do not begin to migrate content here yet, though, as it could still be erased without notice.

Currently, the plan is to migrate most pages to the MediaWiki instance using tools being developed by @guillem and @maytham, which will retain the edit history of each as well as convert the content to the MediaWiki syntax as a final stage at the end. This is achieved by accessing the internal file-based database for MoinMoin. You can find a demonstration of this at FreedomBox (in particular, the preservation of the edit history), which is the end result of using the migration tools on the old wiki's page about the same software.

Current resources for conversion:

The configuration and extensions for the new instance have not been finalized yet. @maytham is working on an extension (Salsa repository) to provide it with the Debian navigation bar that is present on many other Debian sites. New extensions require manual intervention by DSA which can take some time, especially if they are not already packaged for Debian.

Content licensing

The migration provides a good opportunity to think about the long-standing licensing problems that are often interpreted to mean that content from the old wiki cannot in fact be reused or redistributed legally.

Since 2025-07-24, new content on the MoinMoin-based wiki is released under the terms of the Creative Commons Attribution-ShareAlike License, version 4.0 (CC-BY-SA-4.0),[2] unless otherwise noted, so non-copyrighted work will gradually be replaced even absent an orchestrated migration effort.

The migration will most likely work like those that occurred for previous MoinMoin version bumps: the old edit history will be retained, followed by a conversion edit to migrate any deprecated syntax. That ensures the migration to MediaWiki isn't blocked on the time-consuming process of rewriting content, and the licensing issues will eventually fade away with the passage of time.

Choice of license

The Creative Commons license was agreed upon between participants on the mailing list and IRC because it:

  • is designed for and applies to content, in contrast to other licenses that are aimed at software source code;
  • requires attribution for contributors' hard work;
  • ensures any adaptations of the work remain available for reuse/redistribution under the same terms, preventing potential future bad actors from taking the work and making it proprietary; and
  • is relatively permissive and compatible with the GNU GPL v3.0.

Frequently asked questions

See also: The Re: Content licensing thread on the debian-wiki mailing list
Why not a dedication to the public domain, a la CC0?
The license chosen should generally require attribution. Virtually no content from other sources/sites could be copied to the wiki because nothing is compatible with the public domain except other public domain content.
Why not Expat (a.k.a., the MIT License)?
That license is intended for software, whereas the Creative Commons licenses are intended for use specifically with non-software works. Note that the Debian website proper (www.debian.org) uses this, though.
Why not GFDL?
In 2006, Debian Developers approved a General Resolution that defined the project's official posture towards the GFDL, declaring it DFSG-incompatible except when it is used without any of its invariant options. It is also much more restrictive, thereby reducing the possibility of reusing wiki content elsewhere, such as in man pages or the official documentation.
Why not Creative Commons' NonCommercial (NC) or NoDerivatives (ND) options?
Neither of those are DFSG-compatible.

Old content

@maytham is leading an ongoing relicensing effort (coordinated in the Maytha8/wiki-relicensing repository on Salsa), seeking to make contact with all previous Debian Wiki contributors and obtain permission for their work to be re-licensed under CC-BY-SA-4.0.

New content

Notices have been added to the current wiki stating that any contributions submitted after midnight UTC on 2025-07-24 are released under CC-BY-SA-4.0, unless otherwise noted. A copyright.html page[2] has also been written up with details on how to be compliant with the license.

Recommendations and mass edits

Before the old wiki can be migrated in bulk, we need to identify all the ways in which it will behave differently and work out how to adapt to those differences. For example, the current wiki has "discussion" pages that end with /Discussion, and are linked from within the page body. The equivalent MediaWiki convention is for "Talk" pages to use the same page name as their "content space" counterparts but nevertheless exist in parallel and separate namespaces that have the word Talk: appended, e.g., Category_talk:, and are linked from above the page content. Rules and recommended processes are being written up at WikiRevamp/Recommendations on the old wiki.

Several differences involve converting loose editing conventions to automated rules by writing pattern-matching code and doing mass edits to normalize all of the migrated content under a single, workable format. For example, "discussion" links on the old wiki have almost always been added by individual editors with page-specific styling. Every instance of that will need to be removed or massaged into conformity with the migration tool's definition of acceptable syntax. To achieve that, we plan to change all discussion links to supplementation page instructions that can be easily removed during the migration process. Tools for these conversions are available in the mediawiki-recommendations repository on Salsa.

Specific mass edits

A "mass edit" refers to using an automation tool to process and edit a great many (usually hundreds or thousands) of pages at once with the goal of tackling very pervasive formatting issues in a deterministic manner. The term itself is a reference to MediaWiki's own MassEditRegex extension.

Some target objectives for these tasks have already been identified.

#language tags (2025-08-17)
Many old wiki pages have a processing instruction such as #language pt_BR. This edit changed about 15 pages with errors in their processing instructions; see the mailing list thread for more details.
Category footers (2025-08-17)
Categories are generally appended to pages after a horizontal rule generated by entering four consecutive hyphen-minuses on a line by themselves in the page's source code. This edit changed about 620 pages containing issues that made it harder to detect the category list; see the mailing list thread for more details.
<<FullSearch>> (2025-09-06 and 2025-09-07)
MoinMoin's <<FullSearch>> macro doesn't have a direct MediaWiki equivalent, so we will need to convert it differently depending on its contents. This edit changed about 130 pages in an effort to reduce the number of patterns that need to be considered; see the mailing list thread for more details.
Translation page names (2025-10-04)
Translations should have page names that resemble each other, but many old wiki pages don't fit that pattern, such as when some language translations haven't been updated since the English version was renamed). This edit renamed approximately 100 pages to fit the normal naming convention; see the mailing list thread for more details.
Non-wiki #formats (2026-02-20 and 2026-02-21)
MoinMoin's #format processing instruction isn't widely used, but adds another special case to the migration process; consider using a page-wide #!highlight block instead. See the mailing list thread for more details.

Responding to mass edits

If you expect an upcoming mass edit to affect a lot of pages you maintain, consider making a rule to ignore e-mails with the subject Update of ".*" by <author> and a date within the specified range, where <author> is the wiki username of the person managing the edit (e.g. Andrew Sayers).

If you wish to object to an upcoming mass edit, contact the mailing list (preferably in a reply to that edit's announcement thread) before it occurs and explain your objection. We'll talk through the issue and look for suitable ways to change the upcoming work. If you're having difficulty phrasing your objection, it's fine to just say "I need time to think through the implications, please postpone by a week," and then write a longer reply a few days later.

If you want to object to an already-completed mass edit, you should again make contact on the mailing list after reverting the change, explaining your objection. We'll look for solutions, e.g., a new mass-edit to fix other pages. Editors are usually notified about changes to pages they've edited, but a mass edit that affects a thousand pages will generate notifications for all future changes to all thousand pages, so you shouldn't assume the mass editor has seen your reversion.

Other conversations

Be advised: ⚠️ This section attempts to summarize conversations from the mailing list and IRC channel. It will always be somewhat out-of-date and incomplete. ⚠️

Debian Bug Tracker links

See also: The DebianBug links thread on the mailing list.

The current wiki renders links to Debian and Ubuntu bugs with a distinct style, receiving a title attribute with their subject line, with closed bugs also shown struck with a line through them. For example, the following bugs should be struck through, and you should see a tooltip with their subject line when you hover your mouse pointer over them: Bug #399237 and LP #1597017.

At the code level, this is implemented by including bugstatus.js in every page, where it scans the HTML for those specific link types and sends requests to the bugstatus script and the launchpad script. The bugstatus script in turn uses the Debbugs SOAP interface while the launchpad script uses the eponymous launchpadlib Python module.

The MediaWiki alternatives to these approaches include:

  • MediaWiki:Common.js is a JavaScript file included in every page on a wiki. This is the alternative that's most similar in function, but it can be hard to manage because of the temptation to put unrelated content in the same file.
  • The MediaWiki Gadgets extension is a more powerful alternative to MediaWiki:Common.js, and seems like the natural choice for a replacement for the current MoinMoin implementation.
  • Scary transcluding lets you include pages and templates from other wikis with a cache for the page data and a configurable timeout. For example, this would let us run an internal service that generates HTML from some pre-existing Perl library, then transclude that HTML into ordinary wiki pages. It's the wrong tool for this particular job, but may be worth revisiting if other use cases pop up.
  • The Cargo extension lets MediaWiki store and query data in an internal database (which could potentially be synchronised with an external database, somehow), but Cargo has a poor security reputation and synchronizing the data could be awkward.
  • The External Data extension lets MediaWiki interrogate external sources, like the Ultimate Debian Database. This would let us render links server-side instead of in JavaScript, but would introduce questions around caching. Allowing the wiki to query the UDD opens up a lot of interesting possibilities, and this might be a good way to make that possible. This is the solution we currently expect to eventually make use of.

Migrating user accounts

See also: The "How to manage new Salsa accounts with the new wiki" thread on the mailing list.

The plan is to switch from MoinMoin's built-in user database to authenticating using Salsa accounts, so people will need to create a Salsa account.

The suggested solution is to disable creation of new wiki accounts at some point and give account holders from the old wiki replacement accounts on Salsa with the same username, and ask them to change their information if they want.

Boilerplate page headers

Pages often start with some boilerplate text (i.e., translation headers). Putting a common header template on all pages would make it easier to manage that text; see Template:PageHeader for an initial demonstration of how that might look. This has been mentioned in passing, but no firm decision has yet been made.

Translations

See also: The "Info request on new Wiki translations - any automatic handling of translation headers and translated pages?" thread on the mailing list.

We plan to install MediaWiki's Translate extension to handle content localization workflows. The benefits of doing this include:

  • No need to maintain a TAG:TRANSLATION-HEADER block, instead just add <languages /> to the top of a page and the rest is handled automatically on the backend.
    • For a good example of this extension in action, check out the "Languages" block at the top of Translate extension's help page.
  • It provides advanced translation tools, like always showing up-to-date completion progress for each language and suggesting machine translation suggestions to translators directly within the interface.
  • It will likely be familiar to people coming here from other MediaWiki-based wikis, too.

We could avoid the need to manually add <languages /> tags to pages by installing MediaWiki's Universal Language Selector extension and enabling wgTranslatePageTranslationULS. To see how this works, go to the Debian article on English Wikipedia and there click on the Languages button near the top of the page.

Another approach would be to write our own custom templates for managing translations (see ExampleForTranslation for a proof of concept). They would have no external dependencies and we could modify them more easily, but they'd be harder to maintain and wouldn't have as many features.

Still another alternative would be OpenStreetMap Wiki's Languages template, which is powered by a Lua module so it only requires the common Scribunto extension. It would probably produce a better result than custom templates, but doesn't provide the advanced tools found in MediaWiki's solution.

We plan to include a template for linking to localized versions of pages, so for example, if you're translating Some page and encounter a link to This other page, you would only need to use a simple syntax like {{Ll|This other page}} to create a link to that page's translations to the same language on all of the translations of Some page; see MediaWiki's Localized link template, OpenStreetMap Wiki's LL template, and our very own Template:Ll right here to compare the implementation choices.

Editorial tasks (e.g. CategoryProposedDeletion)

See also: The summary of the IRC discussion surrounding "Issues around CategoryProposedDeletion".

On the MoinMoin wiki, pages are added to editorial categories like CategoryProposedDeletion, with the expectation that the editorial work will be undertaken at some time in the future. That editorial process is discussed in the editor guide there.

MediaWiki makes it easy to create more verbose and precise admonitions, with guidance on the page itself; see the pro forma ExampleForProposedDeletion for one potential style.

Scope

Discussion on the scope of the wiki is ongoing, but still in early stages. Most of it is happening in the "aims of the wiki?" thread on the mailing list.

A draft of potential guidelines was published at MaythamAlsudany/DraftContentGuidelines on the old wiki, with related discussions about them ongoing at the /Discussion subpage.

Milestones and gamification

MediaWiki automatically sends editors congratulatory notifications when they make a "milestone" number of edits (1st, 10th, 100th, etc.). This can be disabled by going to your User preferences page and disabling the "Edit milestone" option, but there doesn't seem to be a way to disable this by default for all new users.

Automated bot edits

We don't have bots making edits to the old wiki, but some proposals for the new wiki would benefit from such automation.

  • The Debian Bug Tracker links handling could be implemented without JavaScript, so long as editors remember to create links to them as template calls (a la {{DebianBug|NNN}}) instead of [[DebianBug:NNN]] or [https://bugs.debian.org/NNN Bug #NNN]. That's more likely to happen if a bot fixes those links automatically.
  • Boilerplate page headers, such as those for translations, need to be added to the top of each page. Having a bot do that is probably easier than educating each new editor that comes along.
  • Editorial tasks involve scheduling some action for a particular future date (e.g., deleting a page if nobody objects for one month). Automating those actions would give everyone more certainty about the issue, and might mean non-admin users don't need permission to delete pages themselves.
    • An alternative would be to encourage people to help clean up the wiki in general, rather than just focus on their little corner of it. This hasn't worked before, because doing so is less inherently rewarding, risks treading on others' toes, and is unnecessarily hard work in MoinMoin, but this hasn't had its own dedicated discussion, and no decision has been made.

Interwiki links vs. templates

See also: The brief mention in the "Re: Complex conversion issues" thread on the mailing list, and the resulting DebianIRC template.

The current wiki's InterWikiMap is quite large, and as evidenced by the debate over Debian Bug links there's interest in pushing beyond what it's currently designed to handle. MediaWiki interwiki links can only be changed by editing a database table, so a direct translation would be harder to use than the current solution.

Templates are more flexible than interwiki links, and also more familiar to users. So far, nobody has objected to the idea of converting most interwiki links to templates.

References

  1. Etherpad from the BOF.

See also