GNU宣言是理查德·斯托曼所写,于1985年3月发表在 Dr. Dobb's Journal of Software Tools 杂志上,内容解释和定义GNU计划的目标,并呼吁人们参与及支持,是自由软件运动的核心精神。GNU宣言内置在包括GNU Emacs在内的很多GNU软件包内,也有网页上的版本可以取得。
GNU宣言的某些部分开始于Richard Stallman于1983年9月27日以电子邮件的形式在Usenet新闻组上发布的GNU项目公告。 该项目的目标是通过合作开发和提供基于RMS软件自由理念的软件(尽管书面定义直到1986年2月才出现),给计算机用户自由并能自己控制他们自己的计算机。 宣言的目的是让更多的人熟悉这些概念,并以工作、金钱、程序和硬件的形式寻求更多的支持。
GNU宣言在1985年有了它的名字和完整的形式,并在1987年以较小的方式进行了更新。
GNU宣言开篇解释了GNU项目是什么,以及当前GNU操作系统创建的进展情况。尽管该系统基于Unix,并且与Unix兼容,但作者希望对其进行许多改进,这些改进在宣言中详细列出。
据RMS所说,GNU项目背后的一个主要驱动点是Unix及其各种组件(在当时)迅速成为专有软件(即闭源软件和专有软件)的趋势。
该宣言为启动GNU项目奠定了哲学基础,即专有软件让用户不能再像从前一样相互帮助,同时这个基础也对GNU项目的实现很重要。斯托尔曼拒绝编写专有软件作为与他们团结一致的标志。
作者提供了许多原因来解释为什么项目和软件自由对用户有益,尽管他同意广泛采用它会降低程序员的工作的利润。
GNU宣言的大部分内容都集中在驳斥对GNU项目目标的可能反对。它们包括程序员谋生的需要,自由软件的广告发行问题,以及感知到的利润激励的需要。